VerQueryValue
VB声明
Declare Function VerQueryValue& Lib "version.dll" Alias "VerQueryValueA" (pBlock As Byte, ByVal lpSubBlock As String, lplpBuffer As Long, puLen As Long)
说明
这个函数用于从版本资源中获取信息。调用这个函数前,必须先用GetFileVersionInfo函数获取版本资源信息。这个函数会检查资源信息,并将需要的数据复制到一个缓冲区里
返回值
Long,TRUE(非零)表示成功,如请求的信息不存在,或pBlock不属于有效版本信息,那就返回一个零
参数表
参数 类型及说明
pBlock Byte,指定一个内存块第一个字节的地址。这个内存块包含了由GetFileVersionInfo函数取回的版本数据信息
lpSubBlock String,下述值之一:
"\" 获取文件的VS_FIXEDFILEINFO结构
"\VarFileInfo\Translation" 获取文件的翻译表
"\StringFileInfo\...." 获取文件的字串信息。参考注解
lplpBuffer Long,指定一个Long变量的地址,该变量用于装载一个缓冲区的地址。请求的版本信息最终会装载到那个缓冲区里
puLen Long,指定由lplpBuffer参数引用的数据值的长度,以字节为单位
注解

如lplpBuffer参数为"\StringFileInfo\....",缓冲区里就会载入一个整数数组。每一对整数都代表一种语言和代码页,它们描绘了可用的字串信息。通过用下面这三个部分指定一个字串,从而获得StringFileInfo字串数据:"\StringFileInfo\languagecodepage\stringname",其中languagecodepage(语言代码页)是采用字串形式的一个8字符十六进制数字。如翻译表中的语言代码页条目是&H04090000,那么这个字串就应该是"04090000"。stringname(字串名)指定的是一个字串名。这个参数的一个例子如下:
"\StringFileInfo\04090000\CompanyName"

其他
从vb的api文本查看器复制的声明如下:
Declare Function VerQueryValue Lib "version.dll" Alias "VerQueryValue" (pBlock As Any, ByVal lpSubBlock As String, ByVal lplpBuffer As Long, puLen As Long) As Long

Top