Функция MsiGetFeatureInfoA (msi.h)
Функция MsiGetFeatureInfo возвращает описательные сведения для компонента.
Синтаксис
UINT MsiGetFeatureInfoA(
[in] MSIHANDLE hProduct,
[in] LPCSTR szFeature,
[out, optional] LPDWORD lpAttributes,
[out, optional] LPSTR lpTitleBuf,
[in, out, optional] LPDWORD pcchTitleBuf,
[out, optional] LPSTR lpHelpBuf,
[in, out, optional] LPDWORD pcchHelpBuf
);
Параметры
[in] hProduct
Дескриптор продукта, которому принадлежит функция. Этот дескриптор получен из MsiOpenProduct.
[in] szFeature
Код компонента для компонента, о котором должны быть возвращены сведения.
[out, optional] lpAttributes
Указатель на расположение, содержащее один или несколько следующих флагов атрибутов.
INSTALLFEATUREATTRIBUTE_FAVORLOCAL (1)
INSTALLFEATUREATTRIBUTE_FAVORSOURCE (2)
INSTALLFEATUREATTRIBUTE_FOLLOWPARENT (4)
INSTALLFEATUREATTRIBUTE_FAVORADVERTISE (8)
INSTALLFEATUREATTRIBUTE_DISALLOWADVERTISE (16)
INSTALLFEATUREATTRIBUTE_NOUNSUPPORTEDADVERTISE (32)
Дополнительные сведения см. в разделе
Таблица признаков. Значения, возвращаемые MsiGetFeatureInfo , в два раза больше значений в столбце Атрибуты таблицы признаков.
[out, optional] lpTitleBuf
Указатель на буфер для получения локализованного имени компонента, соответствующего полю Title в таблице признаков.
Это необязательный параметр, он может содержать значение NULL.
[in, out, optional] pcchTitleBuf
В качестве входных данных — размер lpTitleBuf. В качестве выходных данных — количество символов, возвращаемых в lpTitleBuf. На входных данных это полный размер буфера и включает пробел для завершающего символа NULL. Если переданный буфер слишком мал, возвращаемое число не включает завершающий символ NULL.
[out, optional] lpHelpBuf
Указатель на буфер для получения локализованного описания компонента, соответствующего полю Описание компонента в таблице Признаков. Это необязательный параметр, он может содержать значение NULL.
[in, out, optional] pcchHelpBuf
В качестве входных данных — размер lpHelpBuf. В качестве выходных данных — количество символов, возвращаемых в lpHelpBuf. На входных данных это полный размер буфера и включает пробел для завершающего символа NULL. Если переданный буфер слишком мал, возвращаемое число не включает завершающий символ NULL.
Возвращаемое значение
Код возврата | Описание |
---|---|
|
Недопустимый дескриптор продукта. |
|
Один из параметров является недопустимым. |
|
Буфер слишком мал для хранения запрошенных данных. |
|
Функция возвращает успешно. |
|
Эта функция неизвестна. |
Комментарии
Размер буфера для функции MsiGetFeatureInfo должен включать дополнительный символ для завершающего символа NULL. Если буфер слишком мал, возвращаемая строка усекается со значением NULL, а размер буфера содержит количество символов во всей строке, не включая завершающий символ NULL. Дополнительные сведения см. в разделе Вызов функций базы данных из программ.
Примечание
Заголовок msi.h определяет MsiGetFeatureInfo в качестве псевдонима, который автоматически выбирает версию 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 |