SLGetSLIDList 函数 (slpublic.h)

根据输入查询 ID 类型和 ID 值获取 SLID列表。

语法

HRESULT SLGetSLIDList(
  [in]           HSLC       hSLC,
  [in]           SLIDTYPE   eQueryIdType,
  [in, optional] const SLID *pQueryId,
  [in]           SLIDTYPE   eReturnIdType,
  [out]          UINT       *pnReturnIds,
  [out]          SLID       **ppReturnIds
);

参数

[in] hSLC

类型: HSLC

当前 SLC 上下文的句柄。

[in] eQueryIdType

类型: SLIDTYPE

输入 ID 的类型。

[in, optional] pQueryId

类型: const SLID*

指向输入 ID 的指针。

[in] eReturnIdType

类型: SLIDTYPE

返回的 ID 的类型。

[out] pnReturnIds

类型: UINT*

指向返回的 ID 数的指针。

[out] ppReturnIds

类型: SLID**

返回的 ID 的数组。

返回值

类型: HRESULT WINAPI

如果此函数成功,则返回 S_OK。 否则,将返回 HRESULT 错误代码。

返回代码/值 说明
E_INVALIDARG
0x80070057
一个或多个参数无效。
SL_E_VALUE_NOT_FOUND
0xC004F012
找不到输入键的值。
SL_E_NOT_SUPPORT
0xC004F016
不支持该请求。

注解

支持以下查询组合。

eQueryIdType pQueryId eReturnIdType 结果
SL_ID_APPLICATION SLID_ALL SL_ID_APPLICATION 获取所有已安装的应用程序 ID。
SL_ID_PRODUCT_SKU SLID_ALL SL_ID_PRODUCT_SKU 获取所有已安装的产品 SKU ID。
SL_ID_APPLICATION appId SL_ID_PRODUCT_SKU 根据输入应用程序 ID 获取 SKU ID。
SL_ID_PRODUCT_SKU skuId SL_ID_APPLICATION 根据输入 SKU ID 获取应用程序 ID。
SL_ID_PRODUCT_SKU skuId SL_ID_PKEY 根据输入 SKU ID 获取许可证 PKey ID。
SL_ID_PRODUCT_SKU skuId SL_ID_LICENSE_FILE 根据输入 SKU ID 获取许可证文件 ID。
SL_ID_LICENSE_FILE fileId SL_ID_LICENSE 根据输入的许可证文件 ID 获取许可证 ID。
SL_ID_LICENSE LicenseId SL_ID_LICENSE_FILE 根据输入的许可证 ID 获取许可证文件 ID。
SL_ID_LICENSE LicenseId SL_ID_APPLICATION 从令牌激活许可证的所有授予中获取所有应用程序 ID 或 SKU ID 的联合。 如果许可证 ID 有效但未引用令牌激活许可证,则返回 SL_E_NOT_SUPPORTED
SL_ID_LICENSE LicenseId SL_ID_PRODUCT_SKU 从令牌激活许可证的所有授予中获取所有应用程序 ID 或 SKU ID 的联合。 如果许可证 ID 有效但未引用令牌激活许可证,则返回 SL_E_NOT_SUPPORTED

要求

   
最低受支持的客户端 Windows 8 [仅限桌面应用]
最低受支持的服务器 Windows Server 2012 [仅限桌面应用]
目标平台 Windows
标头 slpublic.h
Library Slc.lib
DLL Slc.dll