|
| БЕСПЛАТНАЯ ежедневная online лотерея! Выигрывай каждый день БЕСПЛАТНО! |
|
|
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
| Пригласи друзей и счет твоего мобильника всегда будет положительным! |
| Пригласи друзей и счет твоего мобильника всегда будет положительным! |
VerQueryValue
Функция VerQueryValue возвращает выбранную информацию версии из определенного версия-информационного ресурса. Для того, чтобы извлекать подходящий ресурс, функция GetFileVersionInfo должна быть названа перед VerQueryValue.
Как и другая файловая установка функционирует, VerQueryValue только будет работать с файловыми образами Win32. файловые образы 16- бита Windows не поддерживаны.
BOOL VerQueryValue(
const LPVOID pBlock, // адрес буфера для ресурса версии LPTSTR lpSubBlock, // ценного адреса, чтобы извлекать LPVOID *lplpBuffer, // адрес буфера для указателя версии PUINT puLen // адрес длины версии-величина буфера );
Параметры
pBlock
Точки на буфер, содержащие версия-информационный ресурс возвращались GetFileVersionInfo.
lpSubBlock
Точки на расторгнутую нулевую строку, определяющие какое версия-информационную величину, чтобы извлекать. Строка состоит из имен разделенных обратной косой чертой (\) и может иметь одно из следующего форм:
Описание Формы \ Определяет корневого блока. Функция извлекает указатель в структуру VS_FIXEDFILEINFO для версия-информационного ресурса. \VarFileInfo\Translation Определяет таблицу перевода в переменной информационной структуре. Функция извлекает указателю в массив языка и символа-установившие идентификаторы. Приложение использует эти идентификаторы, чтобы создавать имя языковой-специфической структуры в версия-информационном ресурсе. charset\string- имя \StringFileInfo\lang-Определяет величину в языковой-специфической структуре. lang-Имя charset является конкатенацией языка и символ-был установлен пара идентификатора обнаруживалась в таблице перевода для ресурса. lang-Имя charset должен быть определен как шестнадцатеричная строка. Строка-имя имени - одной из встроенных строк описанных в секции Замечаний следующего.
lplpBuffer
Точки на буфер, которые получают указатель в версия-информационную величину.
puLen
Точки на буфер, которые получают длину, в символах, версия-информационной величины.
Обратные Величины
Если определенная структура существует и информация версии доступна, обратная величина ненулевая. Если адрес длины буфера является нулем, никакая величина не доступна для определенного версия-информационного имени. Если определенное имя не существует или определенный ресурс недействителен, обратная величина нулевая.
Замечания
Win32 API Содержит следующие информационные строки встроенной версии: CompanyName FileDescription FileVersion InternalName LegalCopyright OriginalFilename ProductName ProductVersion следующий пример показывает как, чтобы извлекать строку-величину FileDescription из блока информации версии:
VerQueryValue(pBlock, ТЕКСТ("\\StringFileInfo\\040904E4\\FileDescription"), &lpBuffer, &dwBytes);
Назовите GetFileVersionInfoSize и функции GetFileVersionInfo, чтобы правильно инициализировать буфер pBlock перед вызовом функции VerQueryValue.
Смотри Также
GetFileVersionInfo, GetFileVersionInfoSize, VS_FIXEDFILEINFO, VS_VERSION_INFO
|
|
|
|
| |