SLGetLicenseInformation 函数 (slpublic.h)

获取指定的许可证信息。

语法

HRESULT SLGetLicenseInformation(
  [in]            HSLC       hSLC,
  [in]            const SLID *pSLLicenseId,
  [in]            PCWSTR     pwszValueName,
  [out, optional] SLDATATYPE *peDataType,
  [out]           UINT       *pcbValue,
  [out]           PBYTE      *ppbValue
);

参数

[in] hSLC

类型: HSLC

当前 SLC 上下文的句柄。

[in] pSLLicenseId

类型: const SLID*

指向许可证 ID 的指针。

[in] pwszValueName

类型: PCWSTR

与要检索的值关联的名称。 以下值有效。

含义
SL_INFO_KEY_DESCRIPTION
L“说明”
许可证的说明。
SL_INFO_KEY_LICENSE_TYPE
L“LicenseType”
许可证的类型。
SL_INFO_KEY_VERSION
L“版本”
许可证的版本。

[out, optional] peDataType

类型: SLDATATYPE*

指向 SLDATATYPE 枚举的值的指针,该值指定 ppbValue 缓冲区中的数据类型。 可接受的值为:

含义
SL_DATA_SZ
UNICODE 字符串
SL_DATA_DWORD
DWORD
SL_DATA_BINARY
二进制 BLOB

[out] pcbValue

类型: UINT*

指向 ppbValue 缓冲区的大小(以字节为单位)的指针。

[out] ppbValue

类型: PBYTE*

如果成功,将在 SLC 分配的缓冲区中返回数据。
使用完内存后,通过调用 LocalFree 函数释放内存。

返回值

类型: HRESULT WINAPI

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

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

要求

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