Функция MsiQueryFeatureStateExW (msi.h)
Функция msiQueryFeatureStateEx возвращает установленное состояние для компонента продукта. Эту функцию можно использовать для запроса любой функции экземпляра продукта, установленного под учетной записью компьютера, или любого контекста текущей учетной записи пользователя или контекста, управляемого пользователем, в любой учетной записи пользователя, отличной от текущего пользователя. Пользователь должен иметь права администратора, чтобы получить сведения о продукте, установленном для пользователя, отличного от текущего пользователя.
Синтаксис
UINT MsiQueryFeatureStateExW(
[in] LPCWSTR szProductCode,
[in] LPCWSTR szUserSid,
[in] MSIINSTALLCONTEXT dwContext,
[in] LPCWSTR szFeature,
[out, optional] INSTALLSTATE *pdwState
);
Параметры
[in] szProductCode
Идентификатор guid ProductCode продукта, содержащего интересующую функцию.
[in] szUserSid
Указывает идентификатор безопасности учетной записи, в которой существует экземпляр запрашиваемого продукта. Если dwContext не MSIINSTALLCONTEXT_MACHINE, то значение NULL указывает текущего пользователя.
[in] dwContext
Контекст установки экземпляра продукта, запрашиваемого.
[in] szFeature
Задает запрашиваемую функцию. Идентификатор функции, как показано в столбце компонента
[out, optional] pdwState
Состояние установки компонента для указанного экземпляра продукта. Этот параметр может возвращать один из следующих или null.
Ценность | Значение |
---|---|
|
Эта функция объявлена. |
|
Компонент устанавливается локально. |
|
Эта функция устанавливается для запуска из источника. |
Возвращаемое значение
Функция msiQueryFeatureStateEx
Ценность | Значение |
---|---|
|
Пользователь должен иметь права администратора, чтобы получить сведения о продукте, установленном для пользователя, отличного от текущего пользователя. |
|
Данные конфигурации повреждены. |
|
Недопустимый параметр был передан функции. |
|
Функция успешно завершена. |
|
Идентификатор компонента не определяет известную функцию. |
|
Код продукта не определяет известный продукт. |
|
Непредвиденный внутренний сбой. |
Дополнительные сведения см. в разделе Отображаемые сообщения об ошибках.
Замечания
Функция msiQueryFeatureStateEx не проверяет, доступна ли эта функция. Функция MsiQueryFeatureStateEx не проверяет идентификатор функции. ERROR_UNKNOWN_FEATURE возвращается для любого неизвестного идентификатора функции. Когда запрос выполняется в продукте, установленном в контексте неуправляемого пользователя для учетной записи пользователя, отличной от текущего пользователя, функция завершается ошибкой. В этом случае функция возвращает ERROR_UNKNOWN_FEATUREили если продукт объявлен только (не установлен), ERROR_UNKNOWN_PRODUCT возвращается.
Заметка
Заголовок msi.h определяет MsiQueryFeatureStateEx как псевдоним, который автоматически выбирает версию 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, см. в разделе "Требования к установщику Windows Run-Time". |
целевая платформа | Виндоус |
заголовка | msi.h |
библиотеки |
Msi.lib |
DLL | Msi.dll |
См. также
отображаемых сообщений об ошибках
таблицы компонентов