Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  

Показать сообщение отдельно

Аватара для kotkovets

Ветеран


Сообщения: 1216
Благодарности: 486

Профиль | Отправить PM | Цитировать


MKN, я же говорил, почти все все работает на апи в NSIS - открой winver или winver2
дабы не писать - System::Call "user32:, которое уже расписано библиотеках в виде макросов для удобства.
из winver2:
Код: Выделить весь код
!macro FUNC_GetVersionEx STRUCT_SIZE
    System::Call "*$9(i${STRUCT_SIZE})"
    System::Call "kernel32::GetVersionEx(ir9)i.R0"
!macroend

!macro FUNC_OSVERSIONINFOEX
    System::Alloc ${OSVERSIONINFOEX_SIZE}
    Pop $9
    !insertmacro FUNC_GetVersionEx ${OSVERSIONINFOEX_SIZE}
    ${IfThen} $R0 = 0 ${|} !insertmacro FUNC_GetVersionEx ${OSVERSIONINFO_SIZE} ${|}
    System::Call "*$9(i.R2, i.r0, i.r1, i.r2, i.r3, &t128.r4, &i2.r5, &i2.r6, &i2.r7, &i1.r8, &i1)"
    System::Free $9
!macroend
теже яйца вид сбоку, и еще объявить штук 200 констант... так хочется в скрипте писать?
---
или подключить winver2.nsh и написать так:
Код: Выделить весь код
${WinVersionMinor} $0
для стандартного winver:
Код: Выделить весь код
${WinVerGetMinor} $0
а почему winver2 читай в справке. читать внимательно когда будем?
Цитата MKN:
А всё же, можно ли без библиотеки ? »
через реестр, но это для меня ненадежный вариант - легко циферки подправить чем угодно...
исход известен...
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion

-------
Спасибо ВСЕМ за то, что тратите свое время, что бы ПОМОЧЬ МНЕ.


Последний раз редактировалось kotkovets, 22-10-2012 в 14:54.

Это сообщение посчитали полезным следующие участники:

Отправлено: 14:39, 22-10-2012 | #3293