Проверка версии операционной системы



DllGetVersion ( a u -- major minor build)

Кладет на стек три значения (major, minor and build), с помощью которых можно узнать полную версию указанной библиотеки (dll), если она поддерживает такую возможность.


GET-VER ( -- minor major platform)

Кладет на стек три значения:

Value Meaning
1 Windows9*/ME
2 WinNT/2000/XP
Value Meaning
3 Windows NT 3.51
4 Windows 95
4 Windows 98
4 Windows ME
4 Windows NT 4.0
5 Windows 2000
5 Windows XP
5 Windows .NET Server
Value Meaning
51 Windows NT 3.51
0 Windows 95
10 Windows 98
90 Windows ME
0 Windows NT 4.0
0 Windows 2000
1 Windows XP
2 Windows .NET Server

Оперируя этими значениями можно узнать полную версию установленной на компьютере операционной системы.

Пример:

#( test_win_version
NoActive
0 VALUE ver_minor
0 VALUE ver_major
0 VALUE ver_platform
: platform 
    ver_platform 2 = 
    IF 
        ver_major 4 = 
        IF 
            S" NT" 
        ELSE
            ver_minor 0 =
            IF S" 2000" ELSE S" XP" THEN 
        THEN
    ELSE 
        ver_major 4 =
        IF 
            ver_minor 0 =  
            IF 
                S" 95" 
            ELSE
                ver_minor 10 =
                IF S" 98" ELSE S" ME" THEN
            THEN
        THEN
    THEN ;
Action:
    GET-VER TO ver_platform TO ver_major TO ver_minor
    MSG: "Windows %platform% %ver_major%.%ver_minor%
)#

Win2k?

Возвращает флаг TRUE (-1), если nnCron запущен в Win2000/XP и флаг FALSE (0), если в Win9x/ME/NT.


Win95?
Win98?
WinME?
WinXP?
Win2003?

Возвращает флаг TRUE (-1), если nnCron запущен в Win95, Win98, WinME, WinXP или Win2003 (соответственно).


Win9x?

Возвращает флаг TRUE (-1), если nnCron запущен в Win9x/ME и флаг FALSE (0), если в WinNT/2000/XP.


WinNT?

Возвращает флаг TRUE (-1), если nnCron запущен в WinNT/2000/XP и флаг FALSE (0), если в Win9x/ME.


WIN-VER ( -- major )

Кладет на стек цифровое значение версии Windows.

Value Meaning
3 Windows NT 3.51
4 Windows 95
4 Windows 98
4 Windows ME
4 Windows NT 4.0
5 Windows 2000
5 Windows XP
5 Windows .NET Server


WinVerBuild ( -- n)
WinVerMajor ( -- n)
WinVerMinor ( -- n)
WinVerPlatform ( -- n)

Эти слова кладут на стек значения (build, major, minor and platform), оперируя которыми можно узнать полную версию установленной на компьютере операционной системы. См. описания этих значений.


WinVerServicePack ( -- a u)

Возвращает строку с именем последнего сервиспака, который был установлен в системе.

Пример:

\ выводим имя установленного сервиспака на консоль:
WinVerServicePack TYPE CR

WinVersionString ( -- a u)

Возвращает строку с полной версией вашей операционной системы (имя ОС, номер сборки и имя установленного сервиспака).

Пример:

MSG: "%WinVersionString%"