RtlQueryPackageIdentityEx 函数 (ntifs.h)
RtlQueryPackageIdentityEx 返回关联的完整包名称。 它还可以选择返回包相对应用程序名称,以及应用程序是否被视为已打包。
语法
NTSYSAPI NTSTATUS RtlQueryPackageIdentityEx(
PVOID TokenObject,
PWSTR PackageFullName,
PSIZE_T PackageSize,
PWSTR AppId,
PSIZE_T AppIdSize,
LPGUID DynamicId,
PULONG64 Flags
);
参数
TokenObject
令牌对象的句柄 (以TOKEN_QUERY访问权限打开的用户模式) ,或 (内核模式) 原始令牌对象的句柄。
PackageFullName
指向将接收唯一包密钥的宽字符缓冲区的指针。 成功后,缓冲区将为 null 终止。
PackageSize
指向值的指针,该值定义 PackageFullName 指向的缓冲区的大小。 输出时,它将包含写入的大小,包括终止 null。
AppId
指向可能接收包相对应用程序标识符的宽字符缓冲区的指针。 AppId 是可选的,可以为 NULL。
AppIdSize
指向值的指针,该值定义 AppId 指向的缓冲区的大小。 输出时,它将包含写入的大小,包括终止 null。 如果 AppId 不为 NULL, 则 AppIdSize 必须指向有效值;否则 ,AppIdSize 应设置为 NULL。
DynamicId
指向接收应用程序的动态 ID 的值的指针。 DynamicId 是可选的,可以为 NULL。
Flags
指向一个值的指针,该值接收包属性的值的位掩码。
返回值
成功完成后,RtlQueryPackageIdentityEx 返回STATUS_SUCCESS;否则,它将返回如下代码之一。
错误代码 | 含义 |
---|---|
STATUS_INVALID_PARAMETER | 参数包含无效值;例如,未为非 NULL 缓冲区提供大小值。 这是错误代码。 |
STATUS_NOT_FOUND | 包标识不存在。 |
要求
要求 | 值 |
---|---|
最低受支持的客户端 | Windows 8.1 |
标头 | ntifs.h |