<Return[UV]><Top>

VerifyVersionInfo

Declare Function Api_VerifyVersionInfo& Lib "kernel32" Alias "VerifyVersionInfoA" (ByRef lpVersionInformation As OSVERSIONINFOEXA, ByVal dwTypeMask&, ByVal dwlConditionMask As Double)

Declare Function VerifyVersionInfo Lib "kernel32" Alias "VerifyVersionInfoA" (ByRef lpVersionInformation As OSVERSIONINFOEXA, ByVal dwTypeMask As Long, ByVal dwlConditionMask As Double) As Long

オペレーティングシステムの一連のバージョン要件と現在実行中のバージョンの対応する値とを比較する。

パラメータ
lpVersionInformation
    比較するべきオペレーティングシステムのバージョン要件が入った OSVERSIONINFOEX 構造体へのポインタを指定する。

    この構造体のどのメンバの情報を比較するかは、dwTypeMask パラメータで指定する。
    この構造体の dwOSVersionInfoSize メンバは、sizeof(OSVERSIONINFOEX) に設定しておかなければならない。

    また、dwTypeMask で指定するメンバに、有効なデータを指定しておく必要がある。dwTypeMask で指定しないメンバは、無視される。
dwTypeMask
    比較対象の OSVERSIONINFOEX 構造体のメンバを指定する。次の 1 つ以上の値を指定できる。

    値                                           

比較対象のメンバ          

    VER_BUILDNUMBER

dwBuildNumber

    VER_MAJORVERSION

dwMajorVersion

    VER_MINORVERSION

dwMinorVersion

    VER_PLATFORMID

dwPlatformId

    VER_SERVICEPACKMAJOR

wServicePackMajor

    VER_SERVICEPACKMINOR

wServicePackMinor

    VER_SUITENAME

wSuiteMask

    VER_PRODUCT_TYPE

wProductType

dwlConditionMask
    lpVersionInformation で指定する構造体の比較対象の各メンバに使う比較演算子を示す 64 ビット値を指定する。

    この値は、OSVERSIONINFOEX 構造体の比較対象のメンバごとに VER_SET_CONDITION マクロを 1 回ずつ呼び出すことによって得

    られる。

戻り値
    現在実行中のオペレーティングシステムが指定した要件を満たしていると、0 以外の値が返る。
    現在のシステムが要件を満たしていないと、0 が返り、GetLastError 関数が ERROR_OLD_WIN_VERSION を返す。
    関数が失敗すると、0 が返り、GetLastError 関数が ERROR_OLD_WIN_VERSION 以外のエラーコードを返す。

解説
    VerifyVersionInfo 関数は、現在実行中のオペレーティングシステムのバージョン情報を取得し、lpVersionInformation が指す構造体の

    有効なメンバと比較する。そのため、使用中のオペレーティングシステムのバージョンが必要な条件を満たしているかどうか簡単に調べること

    ができる。独自の比較を実行する場合は、GetVersionEx 関数ではなく、できるだけ VerifyVersionInfo 関数を使う。