● OS が Windows95 か NT か取得する ●

結構重要だよね、これって。はい、早速コーディングしましょ。ここでは、Windows 3.1 は考慮しないけど、必要があれば組み込んでね。

'OSのバージョンを取得する
Private Declare Function GetVersionEx Lib "kernel32" Alias "GetVersionExA" (lpVersionInformation As OSVERSIONINFO) As Long

Private Const VER_PLATFORM_WIN32s = 0        'Windows3.1
Private Const VER_PLATFORM_WIN32_WINDOWS = 1 'Windows95
Private Const VER_PLATFORM_WIN32_NT = 2      'Windows NT

'---------------------------------------------------------------------------
'  関数名 : IsWinNT
'  機  能 : OSがWindowsNTか判断する
'  引  数 : なし
'  返り値 : WinNTである…True  WinNTでない…False
'---------------------------------------------------------------------------
Private Function IsWinNT() As Boolean

    Dim udtOSVersion As OSVERSIONINFO

    With udtOSVersion
        .dwOSVersionInfoSize = Len(udtOSVersion)
    End With

    'OSのバージョン取得
    Call GetVersionEx(udtOSVersion)

    IsWinNT = CBool((udtOSVersion.dwPlatformId = VER_PLATFORM_WIN32_NT))

End Function

戻る