msi.h) (MsiQueryFeatureStateExA 函数
MsiQueryFeatureStateEx 函数返回产品功能的已安装状态。 此函数可用于查询安装在计算机帐户下的产品实例的任何功能,或者当前用户帐户下的任何上下文,或当前用户以外的任何用户帐户下的每用户托管上下文。 用户必须具有管理权限才能获取为当前用户以外的用户安装的产品的信息。
语法
UINT MsiQueryFeatureStateExA(
[in] LPCSTR szProductCode,
[in] LPCSTR szUserSid,
[in] MSIINSTALLCONTEXT dwContext,
[in] LPCSTR szFeature,
[out, optional] INSTALLSTATE *pdwState
);
参数
[in] szProductCode
ProductCode 包含相关功能的产品的 GUID。
[in] szUserSid
指定帐户的安全标识符 (SID) ,所查询的产品的实例在该标识符下存在。 如果未MSIINSTALLCONTEXT_MACHINEdwContext,则 null 值指定当前用户。
SID 的类型 | 含义 |
---|---|
|
NULL 表示当前登录的用户。 |
|
为系统中的特定用户指定枚举。 用户 SID 的示例是“S-1-3-64-2415071341-1358098788-3127455600-2561”。 |
[in] dwContext
正在查询的产品实例的安装上下文。
名称 | 含义 |
---|---|
|
检索产品的每用户托管实例的功能状态。 |
|
检索产品的每用户非托管实例的功能状态。
注意 如果针对当前用户以外的用户帐户在每用户非托管上下文中安装的产品进行查询,则函数将失败。
|
|
检索产品的每台计算机实例的功能状态。 |
[in] szFeature
指定要查询的功能。 在“功能”表的“ 功能 ”列中找到 的功能标识符。
[out, optional] pdwState
指定产品实例的功能的安装状态。 此参数可以返回下列值之一或 null。
值 | 含义 |
---|---|
|
该功能已播发。 |
|
该功能已在本地安装。 |
|
该功能已安装为从源运行。 |
返回值
MsiQueryFeatureStateEx 函数返回以下值。
值 | 含义 |
---|---|
|
用户必须具有管理权限才能获取为当前用户以外的用户安装的产品的信息。 |
|
配置数据已损坏。 |
|
向该函数传递了无效参数。 |
|
函数已成功完成。 |
|
功能 ID 不标识已知功能。 |
|
产品代码未标识已知产品。 |
|
意外的内部故障。 |
有关详细信息,请参阅 显示的错误消息。
注解
MsiQueryFeatureStateEx 函数不会验证该功能是否确实可访问。 MsiQueryFeatureStateEx 函数不验证功能 ID。 对于 任何未知功能 ID,将返回ERROR_UNKNOWN_FEATURE。 如果针对当前用户以外的用户帐户在每用户非托管上下文中安装的产品进行查询,则函数将失败。 在这种情况下,函数返回 ERROR_UNKNOWN_FEATURE,或者如果只播发产品 (未安装) ,则返回 ERROR_UNKNOWN_PRODUCT 。
注意
msi.h 标头将 MsiQueryFeatureStateEx 定义为别名,该别名根据 UNICODE 预处理器常量的定义自动选择此函数的 ANSI 或 Unicode 版本。 将非特定编码别名与非非特定编码的代码混合使用可能会导致不匹配,从而导致编译或运行时错误。 有关详细信息,请参阅 函数原型的约定。
要求
要求 | 值 |
---|---|
最低受支持的客户端 | Windows Server 2012、Windows 8、Windows Server 2008 R2 或 Windows 7 上的 Windows Installer 5.0。 Windows Server 2008 或 Windows Vista 上的 Windows Installer 4.0 或 Windows Installer 4.5。 有关 Windows Installer 版本所需的最低 Windows Service Pack 的信息,请参阅 Windows Installer 运行时要求。 |
目标平台 | Windows |
标头 | msi.h |
Library | Msi.lib |
DLL | Msi.dll |
另请参阅
反馈
https://aka.ms/ContentUserFeedback。
即将发布:在整个 2024 年,我们将逐步淘汰作为内容反馈机制的“GitHub 问题”,并将其取代为新的反馈系统。 有关详细信息,请参阅:提交和查看相关反馈