Функция MsiGetProductPropertyA (msi.h)
Функция MsiGetProductProperty извлекает свойства продукта. Эти свойства находятся в базе данных product.
Синтаксис
UINT MsiGetProductPropertyA(
[in] MSIHANDLE hProduct,
[in] LPCSTR szProperty,
[out] LPSTR lpValueBuf,
[in, out] LPDWORD pcchValueBuf
);
Параметры
[in] hProduct
Дескриптор продукта, полученного из MsiOpenProduct.
[in] szProperty
Указывает извлекаемое свойство. Это значение следует вводить с учетом регистра.
[out] lpValueBuf
Указатель на буфер, который получает значение свойства. Значение усекается и заканчивается значением NULL, если значение lpValueBuf слишком мало. Этот параметр может быть нулевым.
[in, out] pcchValueBuf
Указатель на переменную, указывающую размер (в символах) буфера, на который указывает параметр lpValueBuf . На входных данных это полный размер буфера, включая пробел для завершающего символа NULL. Если переданный буфер слишком мал, возвращаемое число не включает завершающий символ NULL.
Если lpValueBuf имеет значение NULL, pcchValueBuf может иметь значение NULL.
Возвращаемое значение
Функция MsiGetProductProperty возвращает следующие значения.
Значение | Значение |
---|---|
|
В функцию передан недопустимый параметр. |
|
В функцию передан недопустимый дескриптор. |
|
Буфер слишком мал для хранения всего значения свойства. |
|
Функция успешно завершена. |
Комментарии
При возврате функции MsiGetProductProperty параметр pcchValueBuf содержит длину строки, хранящейся в буфере. Возвращаемое число не включает завершающий символ NULL. Если буфер недостаточно велик, MsiGetProductProperty возвращает ERROR_MORE_DATA, а MsiGetProductProperty содержит размер строки в символах без подсчета пустого символа.
Примечание
Заголовок msi.h определяет MsiGetProductProperty в качестве псевдонима, который автоматически выбирает версию ANSI или Юникод этой функции на основе определения константы препроцессора ЮНИКОДа. Использование псевдонима, не зависящий от кодирования, с кодом, который не является нейтральным для кодировки, может привести к несоответствиям, которые приводят к ошибкам компиляции или времени выполнения. Дополнительные сведения см. в разделе Соглашения для прототипов функций.
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Установщик Windows 5.0 в Windows Server 2012, Windows 8, Windows Server 2008 R2 или Windows 7. Установщик Windows 4.0 или установщик Windows 4.5 в Windows Server 2008 или Windows Vista. Установщик Windows в Windows Server 2003 или Windows XP. Сведения о минимальном пакете обновления Windows, необходимом для версии установщика Windows, см. в разделе Требования к установщику Windows Run-Time. |
Целевая платформа | Windows |
Header | msi.h |
Библиотека | Msi.lib |
DLL | Msi.dll |