|
Overview |
|
|
|
Group |
|
|
|
Quick Info
Windows NT
| Yes
| Win95
| Yes
| Win32s
| Yes
| Import Library
| | Header File
| winver.h
| Unicode
| WinNT
| Platform Notes
| None
|
|
|
VerQueryValue
The VerQueryValue function returns selected version information from the specified
version-information resource. To retrieve the appropriate resource, the GetFileVersionInfo function must be called before VerQueryValue.
As with the other file installation functions, VerQueryValue will only work with Win32 file images. 16-bit Windows file images are not
supported.
BOOL VerQueryValue(
const LPVOID pBlock,
| // address of buffer for version resource
| LPTSTR lpSubBlock,
| // address of value to retrieve
| LPVOID *lplpBuffer,
| // address of buffer for version pointer
| PUINT puLen
| // address of version-value length buffer
| );
|
|
Parameters
pBlock
Points to the buffer containing the version-information resource returned by GetFileVersionInfo.
lpSubBlock
Points to a zero-terminated string specifying which version-information value
to retrieve. The string consists of names separated by backslashes (\) and can
have one of the following forms:
Form
| Description
| \
| Specifies the root block. The function retrieves a pointer to the VS_FIXEDFILEINFO structure for the version-information resource.
| \VarFileInfo\Translation
| Specifies the translation table in the variable information structure. The
function retrieves a pointer to an array of language and character-set
identifiers. An application uses these identifiers to create the name of a
language-specific structure in the version-information resource.
| \StringFileInfo\lang-charset\string-name
| Specifies a value in a language-specific structure. The lang-charset name is a concatenation of a language and character-set identifier pair found
in the translation table for the resource. The lang-charset name must be specified as a hexadecimal string. The string-name name is one of the predefined strings described in the following Remarks
section.
|
lplpBuffer
Points to a buffer that receives a pointer to the version-information value.
puLen
Points to a buffer that receives the length, in characters, of the
version-information value.
Return Values
If the specified structure exists and version information is available, the
return value is nonzero. If the address of the length buffer is zero, no value is
available for the specified version-information name.
If the specified name does not exist or the specified resource is not valid,
the return value is zero.
Remarks
The Win32 API contains the following predefined version information strings:
CompanyName FileDescription FileVersion InternalName LegalCopyright
OriginalFilename ProductName ProductVersion
The following example shows how to retrieve the FileDescription string-value
from a block of version information:
VerQueryValue(pBlock,
TEXT("\\StringFileInfo\\040904E4\\FileDescription"),
&lpBuffer,
&dwBytes);
Call the GetFileVersionInfoSize and GetFileVersionInfo functions to properly initialize the pBlock buffer before calling the VerQueryValue function.
See Also
GetFileVersionInfo, GetFileVersionInfoSize, VS_FIXEDFILEINFO, VS_VERSION_INFO
Related Links
Software for Delphi and C++ Builder developers
Software for Visual Studio .NET developers
Software for Visual Basic 6 developers
Delphi Tips&Tricks
MegaDetailed.NET
TMS Scripter Studio Pro components for Delphi/C++Builder
More Online Helps
Win32 Multimedia Programmer's Reference (mmedia.hlp)
OLE Programmer's Reference (ole.hlp)
Microsoft Windows Pen API Programmer's Reference (penapi.hlp)
Microsoft Windows Sockets 2 Reference (sock2.hlp)
Microsoft Windows Telephony API (TAPI) Programmer's Reference (tapi.hlp)
Unix Manual Pages
|