<Return[UV]><Top>

VerQueryValue

Declare Function Api_VerQueryValue& Lib "Version" Alias "VerQueryValueA" (pBlock As Any, ByVal lpSubBlock$, lplpBuffer As Any, puLen&)

Declare Function VerQueryValue Lib "version" Alias "VerQueryValue" (pBlock As Any, ByVal lpSubBlock As String, ByVal lplpBuffer As Long, puLen As Long) As Long

指定されたバージョン情報リソースから、指定されたバージョン情報を取得する。適切なバージョン情報リソースを取得するには、VerQueryValue を呼び出す前に、GetFileVersionInfoSize 関数を呼び出し、次に GetFileVersionInfo 関数を使う。

パラメータ
pBlock
    GetFileVersionInfo 関数が返した、バージョン情報リソースを保持しているバッファへのポインタを指定する。
lpSubBlock
    取得対象の情報を示す、NULL で終わる文字列へのポインタを指定する。

    この文字列は、円記号(\)で区切られた複数の名前によって構成されている。このパラメータでは、次のいずれかの形式を指定する。

    形式                                                           

説明                                                                                                       

    \

ルートブロックを指定する。バージョン情報リソースに関する VS_FIXEDFILEINFO 構造

体へのポインタを取得する。

    \VarFileInfo\Translation

1 個の Var 可変情報構造体に含まれている変換テーブルを指定する。この関数は、言

語識別子とコードページ識別子を 1 つのペアとして、複数のペアからなる 1 つの配列への

ポインタを取得する。アプリケーションはこれらの識別子を使って、バージョン情報リソース

内に存在する言語固有の StringTable 構造体にアクセスできる。

    \StringFileInfo\lang-codepage\string-name

言語固有の StringTable 構造体内の 1 つの値を指定する。<lang-codepage> は、リソー

スに関連する変換配列内の DWORD として記録されている、言語識別子とコードページ

識別子のペアを連結したものであり、この <lang-codepage> は、16 進数で指定しなけれ

ばならない。また <string-name> には、定義済みの文字列を指定する。

lplpBuffer
    1 個の変数へのポインタを指定する。関数から制御が返ると、この変数に、pBlock が指すバッファから取得された指定のバージョン情報が

    格納される。関連するメモリが解放された時点で、*lplpBuffer が指すメモリも解放される。
puLen
    1 個のバッファへのポインタを指定する。関数から制御が返ると、このバッファに、バージョン情報の値の長さが文字単位で格納される。

戻り値
    指定されたバージョン情報構造体が存在していて、指定されたバージョン情報が利用できる場合、0 以外の値が返る。

    lplpBuffer で指定した長さバッファのアドレスが 0 の場合、指定されたバージョン情報の名前に関する値は利用不可能である。
    指定した名前が存在しない場合、または指定されたリソースが有効ではない場合、0 が返る。

解説
    このバージョン情報関数が機能を果たすのは、Win32 のファイルイメージだけである。

    16 ビット版 Windows のファイルイメージでは正しく機能しない。
    次に、バージョン情報に関連してあらかじめ定義されている Unicode 文字列を示す。
    Comments、 InternalName、 ProductName
    CompanyName、 LegalCopyright、 ProductVersion
    FileDescription、 LegalTrademarks、 PrivateBuild
    FileVersion、 OriginalFilename、 SpecialBuild