VerQueryValue

此頁(yè)沒(méi)有內(nèi)容條目
內(nèi)容

VerQueryValue

VB聲明

Declare Function VerQueryValue& Lib "version.dll" Alias "VerQueryValueA" (pBlock As Byte, ByVal lpSubBlock As String, lplpBuffer As Long, puLen As Long)

說(shuō)明

這個(gè)函數(shù)用于從版本資源中獲取信息。調(diào)用這個(gè)函數(shù)前,必須先用GetFileVersionInfo函數(shù)獲取版本資源信息。這個(gè)函數(shù)會(huì)檢查資源信息,并將需要的數(shù)據(jù)復(fù)制到一個(gè)緩沖區(qū)里

返回值

Long,TRUE(非零)表示成功,如請(qǐng)求的信息不存在,或pBlock不屬于有效版本信息,那就返回一個(gè)零

參數(shù)表

參數(shù)

類(lèi)型及說(shuō)明

pBlock

Byte,指定一個(gè)內(nèi)存塊第一個(gè)字節(jié)的地址。這個(gè)內(nèi)存塊包含了由GetFileVersionInfo函數(shù)取回的版本數(shù)據(jù)信息

lpSubBlock

String,下述值之一:

"\"

獲取文件的VS_FIXEDFILEINFO結(jié)構(gòu)

"\VarFileInfo\Translation"

獲取文件的翻譯表

"\StringFileInfo\...."

獲取文件的字串信息。參考注解

lplpBuffer

Long,指定一個(gè)Long變量的地址,該變量用于裝載一個(gè)緩沖區(qū)的地址。請(qǐng)求的版本信息最終會(huì)裝載到那個(gè)緩沖區(qū)里

puLen

Long,指定由lplpBuffer參數(shù)引用的數(shù)據(jù)值的長(zhǎng)度,以字節(jié)為單位

注解

如lplpBuffer參數(shù)為"\StringFileInfo\....",緩沖區(qū)里就會(huì)載入一個(gè)整數(shù)數(shù)組。每一對(duì)整數(shù)都代表一種語(yǔ)言和代碼頁(yè),它們描繪了可用的字串信息。通過(guò)用下面這三個(gè)部分指定一個(gè)字串,從而獲得StringFileInfo字串?dāng)?shù)據(jù):"\StringFileInfo\languagecodepage\stringname",其中l(wèi)anguagecodepage(語(yǔ)言代碼頁(yè))是采用字串形式的一個(gè)8字符十六進(jìn)制數(shù)字。如翻譯表中的語(yǔ)言代碼頁(yè)條目是&H04090000,那么這個(gè)字串就應(yīng)該是"04090000"。stringname(字串名)指定的是一個(gè)字串名。這個(gè)參數(shù)的一個(gè)例子如下:

"\StringFileInfo\04090000\CompanyName"

其他

從vb的api文本查看器復(fù)制的聲明如下:

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