#pragma autorecover
#pragma classflags(64)
#pragma namespace("\\\\.\\Root\\CIMV2")
instance of __namespace{ name="ms_804";};
#pragma namespace("\\\\.\\Root\\CIMV2\\ms_804")

[description("此类显示软件授权服务中与产品无关的属性和方法。") : Amended ToSubclass,AMENDMENT, LOCALE(0x0804)] 
class SoftwareLicensingService
{
  [key,description("软件授权服务的版本") : Amended ToSubclass] string Version;
  [description("KMS 主机的名称。如果尚未调用 SetKeyManagementServiceMachine，则返回 null。") : Amended ToSubclass] string KeyManagementServiceMachine;
  [description("客户端用来发送 KMS 激活请求的 TCP 端口。如果尚未调用 SetKeyManagementServicePort，则返回 0。") : Amended ToSubclass] uint32 KeyManagementServicePort;
  [description("包含组织 KMS SRV 记录的资源域 FQDN。如果尚未调用 SetKeyManagementServiceLookupDomain，则返回 null。") : Amended ToSubclass] string KeyManagementServiceLookupDomain;
  [description("KMS 产品密钥 ID。如果不适用，则返回 null。") : Amended ToSubclass] string KeyManagementServiceProductKeyID;
  [description("上次通过 DNS 发现的 KMS 主机名。") : Amended ToSubclass] string DiscoveredKeyManagementServiceMachineName;
  [description("上次通过 DNS 发现的 KMS 主机 IP 地址。") : Amended ToSubclass] string DiscoveredKeyManagementServiceMachineIpAddress;
  [description("上次通过 DNS 发现的 KMS 主机端口。") : Amended ToSubclass] uint32 DiscoveredKeyManagementServiceMachinePort;
  [description("指明是否在计算机上启用 KMS: 如果不启用，则为 0，如果启用，则为 1。") : Amended ToSubclass,values{0, 1} : Amended ToSubclass] uint32 IsKeyManagementServiceMachine;
  [description("授权客户端之前，客户端联系 KMS 主机的频率(以分钟为单位)。") : Amended ToSubclass] uint32 VLActivationInterval;
  [description("授权客户端之后，客户端联系 KMS 主机的频率(以分钟为单位)。") : Amended ToSubclass] uint32 VLRenewalInterval;
  [description("KMS 主机上当前处于活动状态的 KMS 客户端计数。-1 指明不支持计算机作为 KMS，或者未收到任何客户端授权请求。") : Amended ToSubclass] uint32 KeyManagementServiceCurrentCount;
  [description("连接 KMS 主机以启用批量许可所需的最少客户端数。") : Amended ToSubclass] uint32 RequiredClientCount;
  [description("指明是否需要更新授权策略缓存: 0=不需要，1=需要刷新。") : Amended ToSubclass] uint32 PolicyCacheRefreshRequired;
  [description("用于标识连接到 KMS 主机的 KMS 客户端的 GUID。客户端将此内容包含在它向 KMS 发送的请求中。") : Amended ToSubclass] string ClientMachineID;
  [description("可以成功重置客户端的剩余次数。") : Amended ToSubclass] uint32 RemainingWindowsReArmCount;
  [description("KMS 主机用来侦听激活请求的 TCP 端口。") : Amended ToSubclass] uint32 KeyManagementServiceListeningPort;
  [description("指明 KMS 主机的 DNS 发布状态: 0=禁用，1=启用自动发布(默认)。") : Amended ToSubclass] boolean KeyManagementServiceDnsPublishing;
  [description("指明 KMS 服务的线程优先级状态: 0=普通优先级(默认)，1=低优先级。") : Amended ToSubclass] boolean KeyManagementServiceLowPriority;
  [description("指明 KMS 主机名和端口的缓存状态: 0=禁用缓存，1=启用缓存(默认)。") : Amended ToSubclass] boolean KeyManagementServiceHostCaching;
  [description("来自许可证状态为 0 (未经授权)的客户端的 KMS 请求计数。") : Amended ToSubclass] uint32 KeyManagementServiceUnlicensedRequests;
  [description("来自许可证状态为 1 (已授权)的客户端的 KMS 请求计数。") : Amended ToSubclass] uint32 KeyManagementServiceLicensedRequests;
  [description("来自许可证状态为 2 (OOBGrace)的客户端的 KMS 请求计数。") : Amended ToSubclass] uint32 KeyManagementServiceOOBGraceRequests;
  [description("来自许可证状态为 3 (OOTGrace)的客户端的 KMS 请求计数。") : Amended ToSubclass] uint32 KeyManagementServiceOOTGraceRequests;
  [description("来自许可证状态为 4 (NonGenuineGrace)的客户端的 KMS 请求计数。") : Amended ToSubclass] uint32 KeyManagementServiceNonGenuineGraceRequests;
  [description("有效的 KMS 请求总数。") : Amended ToSubclass] uint32 KeyManagementServiceTotalRequests;
  [description("无效的 KMS 请求计数。") : Amended ToSubclass] uint32 KeyManagementServiceFailedRequests;
  [description("来自许可证状态为 5 (通知)的客户端的 KMS 请求计数。") : Amended ToSubclass] uint32 KeyManagementServiceNotificationRequests;
  [description("激活计算机的基于令牌的激活许可证 ID。") : Amended ToSubclass] string TokenActivationILID;
  [description("激活计算机的基于令牌的激活许可证版本。") : Amended ToSubclass] uint32 TokenActivationILVID;
  [description("激活计算机的基于令牌的激活许可证授权号。") : Amended ToSubclass] uint32 TokenActivationGrantNumber;
  [description("激活计算机的证书指纹。") : Amended ToSubclass] string TokenActivationCertificateThumbprint;
  [description("基于令牌的激活的其他信息。") : Amended ToSubclass] string TokenActivationAdditionalInfo;
  [description("OA2 BIOS 标记的状态。0=无 SLIC 表，1=SLIC 表带有 Windows 标记，2=SLIC 表不带 Windows 标记，3=SLIC 表已损坏或者无效") : Amended ToSubclass,values{0, 1, 2, 3} : Amended ToSubclass] uint32 OA2xBiosMarkerStatus;
  [description("OA2 BIOS 标记的次要版本号。") : Amended ToSubclass] uint32 OA2xBiosMarkerMinorVersion;
  [description("OA3 BIOS 标记中的产品密钥。") : Amended ToSubclass] string OA3xOriginalProductKey;
  [description("对应于 OA3 BIOS 标记中密钥的 SKU 版本。") : Amended ToSubclass] string OA3xOriginalProductKeyDescription;
  [description("OA3 BIOS 标记中密钥的商品编号。") : Amended ToSubclass] string OA3xOriginalProductKeyPkPn;
  [description("安装产品密钥。") : Amended ToSubclass] uint32 InstallProductKey([in] string ProductKey);
  [description("安装许可证。") : Amended ToSubclass] uint32 InstallLicense([in] string License);
  [description("安装当前产品的许可证数据包。") : Amended ToSubclass] uint32 InstallLicensePackage([in] string LicensePackage);
  [description("设置用于批量激活的 KMS 主机名。") : Amended ToSubclass] uint32 SetKeyManagementServiceMachine([in] string MachineName);
  [description("清除以前配置的所有 KMS 主机名。") : Amended ToSubclass] uint32 ClearKeyManagementServiceMachine();
  [description("设置客户端用来请求 KMS 主机的 TCP 端口。如果未指定，则使用端口 1688。") : Amended ToSubclass] uint32 SetKeyManagementServicePort([in] uint32 PortNumber);
  [description("清除以前指定的所有端口号。") : Amended ToSubclass] uint32 ClearKeyManagementServicePort();
  [description("设置用于批量激活的 KMS 查找域。") : Amended ToSubclass] uint32 SetKeyManagementServiceLookupDomain([in] string LookupDomain);
  [description("清除以前配置的所有 KMS 查找域。") : Amended ToSubclass] uint32 ClearKeyManagementServiceLookupDomain();
  [description("KMS 客户端在得到授权之前联系 KMS 主机的激活频率(以分钟为单位)。该频率必须大于或等于 15 且小于或等于 43200。如果调用了方法并且计算机不是 KMS，则会返回错误。") : Amended ToSubclass] uint32 SetVLActivationInterval([in] uint32 ActivationInterval);
  [description("KMS 客户端在得到授权之后联系 KMS 主机的续签频率(以分钟为单位)。该频率必须大于或等于 15 且小于或等于 43200。如果调用了方法并且计算机不是 KMS，则会返回错误。") : Amended ToSubclass] uint32 SetVLRenewalInterval([in] uint32 RenewalInterval);
  [description("清除注册表中的产品密钥。") : Amended ToSubclass] uint32 ClearProductKeyFromRegistry();
  [description("DEPRECATED") : Amended ToSubclass] uint32 AcquireGenuineTicket([in] string TemplateId,[in] string ServerUrl);
  [description("将计算机的授权状态重置为 OOB Grace (请参阅 LicenseStatus)。注意: 你必须重新引导客户端才能使更改生效。") : Amended ToSubclass] uint32 ReArmWindows();
  [description("重置应用程序的授权状态。") : Amended ToSubclass] uint32 ReArmApp([in] string ApplicationId);
  [description("更新 Windows 的授权状态以便应用程序有权访问当前的授权信息。") : Amended ToSubclass] uint32 RefreshLicenseStatus();
  [description("设置 KMS 主机用于侦听激活请求的 TCP 端口。仅适用于 KMS 主机。如果未指定，则使用 1688。") : Amended ToSubclass] uint32 SetKeyManagementServiceListeningPort([in] uint32 PortNumber);
  [description("清除以前指定的所有侦听端口。仅适用于 KMS 主机。") : Amended ToSubclass] uint32 ClearKeyManagementServiceListeningPort();
  [description("在 KMS 主计算机上启用/禁用 DNS 发布: 0=启用，1=禁用。") : Amended ToSubclass] uint32 DisableKeyManagementServiceDnsPublishing([in] boolean DisablePublishing);
  [description("启用/禁用以低优先级运行的 KMS 服务: 0=禁用，1=启用。") : Amended ToSubclass] uint32 EnableKeyManagementServiceLowPriority([in] boolean EnableLowPriority);
  [description("在批量激活客户端计算机上启用/禁用 KMS 主机名和端口的缓存: 0=启用，1=禁用。") : Amended ToSubclass] uint32 DisableKeyManagementServiceHostCaching([in] boolean DisableCaching);
  [description("使用指定的产品密钥生成 AD 林激活的安装 ID") : Amended ToSubclass] uint32 GenerateActiveDirectoryOfflineActivationId([in] string ProductKey,[out] string InstallationID);
  [description("使用指定的产品密钥处理 AD 林的确认 ID 以生成激活对象(AO)，然后将该对象发布到 Active Directory 中。") : Amended ToSubclass] uint32 DepositActiveDirectoryOfflineActivationConfirmation([in] string ProductKey,[in] string ConfirmationID,[in] string ActivationObjectName);
  [description("使用指定的产品密钥执行 AD 林的在线激活以生成激活对象(AO)，然后将该对象发布到 Active Directory 中。") : Amended ToSubclass] uint32 DoActiveDirectoryOnlineActivation([in] string ProductKey,[in] string ActivationObjectName);
  [description("设置为 VL 客户端配置的激活方法。") : Amended ToSubclass] uint32 SetVLActivationTypeEnabled([in] uint32 ActivationType);
  [description("清除为 VL 客户端配置的所有以前指定的激活方法。") : Amended ToSubclass] uint32 ClearVLActivationTypeEnabled();
};

[description("此类显示软件授权服务中特定于产品的属性和方法。") : Amended ToSubclass,AMENDMENT, LOCALE(0x0804)] 
class SoftwareLicensingProduct
{
  [key,description("产品标识符") : Amended ToSubclass] string ID;
  [description("产品名称") : Amended ToSubclass] string Name;
  [description("产品描述") : Amended ToSubclass] string Description;
  [description("当前产品的应用程序 ID") : Amended ToSubclass] string ApplicationID;
  [description("进程证书的软件授权服务器 URL") : Amended ToSubclass] string ProcessorURL;
  [description("绑定证书的软件授权服务器 URL") : Amended ToSubclass] string MachineURL;
  [description("产品证书的软件授权服务器 URL") : Amended ToSubclass] string ProductKeyURL;
  [description("用户许可证的软件授权服务器 URL") : Amended ToSubclass] string UseLicenseURL;
  [description("正版验证的软件授权服务器 URL") : Amended ToSubclass] string ValidationURL;
  [description("此产品的应用程序的许可证状态。0=未授权，1=已授权，2=OOBGrace，3=OOTGrace，4=NonGenuineGrace，5=通知，6=ExtendedGrace。") : Amended ToSubclass,values{0, 1, 2, 3, 4, 5, 6} : Amended ToSubclass] uint32 LicenseStatus;
  [description("指明计算机为何处于特定授权状态的诊断代码。") : Amended ToSubclass] uint32 LicenseStatusReason;
  [description("父应用程序进入“通知模式”之前的剩余时间(以分钟为单位)。对于批量客户端，这是需要重新激活前的剩余时间。") : Amended ToSubclass] uint32 GracePeriodRemaining;
  [description("此产品的应用程序的过期日期。在此日期之后，LicenseStatus 将为“未授权”，并且无法激活。") : Amended ToSubclass] datetime EvaluationEndDate;
  [description("可以用于电话或脱机激活的此产品的应用程序的标识符。如果未安装产品密钥，则返回 null。") : Amended ToSubclass] string OfflineInstallationId;
  [description("此产品密钥的后五个字符。如果未安装产品密钥，则返回 null。") : Amended ToSubclass] string PartialProductKey;
  [description("产品密钥 ID。如果未安装产品密钥，则返回 null。") : Amended ToSubclass] string ProductKeyID;
  [description("产品密钥 ID2、PID2、字符串。如果未安装产品密钥，则返回 null。") : Amended ToSubclass] string ProductKeyID2;
  [description("产品密钥通道字符串。如果未安装产品密钥，则返回 null。") : Amended ToSubclass] string ProductKeyChannel;
  [description("用于确定加载项许可证关系的 SKU 系列标识符。") : Amended ToSubclass] string LicenseFamily;
  [description("用于确定加载项许可证关系的 SKU 系列的依赖关系标识符。") : Amended ToSubclass] string LicenseDependsOn;
  [description("如果产品被标识为加载项许可证，则返回 True。") : Amended ToSubclass] boolean LicenseIsAddon;
  [description("授权产品之前客户端联系 KMS 主机的频率(以分钟为单位)。") : Amended ToSubclass] uint32 VLActivationInterval;
  [description("授权产品之后客户端联系 KMS 主机的频率(以分钟为单位)。") : Amended ToSubclass] uint32 VLRenewalInterval;
  [description("KMS 产品密钥 ID。如果不适用，则返回 null。") : Amended ToSubclass] string KeyManagementServiceProductKeyID;
  [description("KMS 主机的名称。如果尚未调用 SetKeyManagementServiceMachine，则返回 null。") : Amended ToSubclass] string KeyManagementServiceMachine;
  [description("客户端用来发送 KMS 激活请求的 TCP 端口。如果尚未调用 SetKeyManagementServicePort，则返回 0。") : Amended ToSubclass] uint32 KeyManagementServicePort;
  [description("包含组织 KMS SRV 记录的资源域 FQDN。如果尚未调用 SetKeyManagementServiceLookupDomain，则返回 null。") : Amended ToSubclass] string KeyManagementServiceLookupDomain;
  [description("上次通过 DNS 发现的 KMS 主机名。") : Amended ToSubclass] string DiscoveredKeyManagementServiceMachineName;
  [description("上次通过 DNS 发现的 KMS 主机 IP 地址。") : Amended ToSubclass] string DiscoveredKeyManagementServiceMachineIpAddress;
  [description("上次通过 DNS 发现的 KMS 主机端口。") : Amended ToSubclass] uint32 DiscoveredKeyManagementServiceMachinePort;
  [description("指明是否在计算机上启用 KMS: 如果启用，则为 1，如果不启用，则为 0。") : Amended ToSubclass,values{0, 1} : Amended ToSubclass] uint32 IsKeyManagementServiceMachine;
  [description("KMS 主机上当前处于活动状态的 KMS 客户端计数。-1 指明未将计算机作为 KMS，或者未收到任何客户端授权请求。") : Amended ToSubclass] uint32 KeyManagementServiceCurrentCount;
  [description("连接 KMS 主机以启用批量许可所需的最少客户端数。") : Amended ToSubclass] uint32 RequiredClientCount;
  [description("来自许可证状态为 0 (未经授权)的客户端的 KMS 请求计数。") : Amended ToSubclass] uint32 KeyManagementServiceUnlicensedRequests;
  [description("来自许可证状态为 1 (已授权)的客户端的 KMS 请求计数。") : Amended ToSubclass] uint32 KeyManagementServiceLicensedRequests;
  [description("来自许可证状态为 2 (OOBGrace)的客户端的 KMS 请求计数。") : Amended ToSubclass] uint32 KeyManagementServiceOOBGraceRequests;
  [description("来自许可证状态为 3 (OOTGrace)的客户端的 KMS 请求计数。") : Amended ToSubclass] uint32 KeyManagementServiceOOTGraceRequests;
  [description("来自许可证状态为 4 (NonGenuineGrace)的客户端的 KMS 请求计数。") : Amended ToSubclass] uint32 KeyManagementServiceNonGenuineGraceRequests;
  [description("有效的 KMS 请求总数。") : Amended ToSubclass] uint32 KeyManagementServiceTotalRequests;
  [description("失败的 KMS 请求总数。") : Amended ToSubclass] uint32 KeyManagementServiceFailedRequests;
  [description("来自许可证状态为 5 (通知)的客户端的 KMS 请求计数。") : Amended ToSubclass] uint32 KeyManagementServiceNotificationRequests;
  [description("此产品的正版状态。") : Amended ToSubclass] uint32 GenuineStatus;
  [description("延长的宽限期(以分钟为单位)，在此时间之后，父应用程序将变为未授权。") : Amended ToSubclass] uint32 ExtendedGrace;
  [description("激活产品的基于令牌的激活许可证 ID。") : Amended ToSubclass] string TokenActivationILID;
  [description("激活产品的基于令牌的激活许可证版本。") : Amended ToSubclass] uint32 TokenActivationILVID;
  [description("激活产品的基于令牌的激活许可证授权号。") : Amended ToSubclass] uint32 TokenActivationGrantNumber;
  [description("激活产品的证书指纹。") : Amended ToSubclass] string TokenActivationCertificateThumbprint;
  [description("基于令牌的激活的其他信息。") : Amended ToSubclass] string TokenActivationAdditionalInfo;
  [description("此产品的信任时间。") : Amended ToSubclass] datetime TrustedTime;
  [description("上次成功激活 VL 客户端所使用的激活类型。") : Amended ToSubclass] uint32 VLActivationType;
  [description("为 VL 客户端配置的激活类型。") : Amended ToSubclass] uint32 VLActivationTypeEnabled;
  [description("上次激活 AD 所使用的 AO 名称。") : Amended ToSubclass] string ADActivationObjectName;
  [description("上次激活 AD 所使用的 AO 完全限定的可分辨名称。") : Amended ToSubclass] string ADActivationObjectDN;
  [description("上次激活 KMS 所使用的 AO 中的 KMS 主机 PID。") : Amended ToSubclass] string ADActivationCsvlkPid;
  [description("上次激活 AD 所使用的 AO 中的 KMS 主机 SkuId。") : Amended ToSubclass] string ADActivationCsvlkSkuId;
  [description("可以成功重置 sku 的剩余次数。") : Amended ToSubclass] uint32 RemainingSkuReArmCount;
  [description("可以成功重置应用的剩余次数。") : Amended ToSubclass] uint32 RemainingAppReArmCount;
  [description("为防止此虚拟机输入通知，主机上需要 IAID。") : Amended ToSubclass] string IAID;
  [description("AVMA 主机的计算机名称。") : Amended ToSubclass] string AutomaticVMActivationHostMachineName;
  [description("产品的上次激活时间。") : Amended ToSubclass] datetime AutomaticVMActivationLastActivationTime;
  [description("AVMA 主机的产品密钥 PID2。") : Amended ToSubclass] string AutomaticVMActivationHostDigitalPid2;
  [description("卸载当前产品的产品密钥。") : Amended ToSubclass] uint32 UninstallProductKey();
  [description("激活当前产品。") : Amended ToSubclass] uint32 Activate();
  [description("通过在执行电话或脱机激活时，放置此产品的脱机确认标识符来激活产品。") : Amended ToSubclass] uint32 DepositOfflineConfirmationId([in] string InstallationId,[in] string ConfirmationId);
  [description("获取 DWORD 类型的许可证策略信息。") : Amended ToSubclass] uint32 GetPolicyInformationDWord([in] string PolicyName,[out] uint32 PolicyValue);
  [description("获取字符串类型的策略信息。") : Amended ToSubclass] uint32 GetPolicyInformationString([in] string PolicyName,[out] string PolicyValue);
  [description("设置用于批量激活的 KMS 主机名。") : Amended ToSubclass] uint32 SetKeyManagementServiceMachine([in] string MachineName);
  [description("清除以前配置的所有 KMS 主机名。") : Amended ToSubclass] uint32 ClearKeyManagementServiceMachine();
  [description("设置客户端用来请求 KMS 主机的 TCP 端口。如果未指定，则使用端口 1688。") : Amended ToSubclass] uint32 SetKeyManagementServicePort([in] uint32 PortNumber);
  [description("清除以前指定的所有端口号。") : Amended ToSubclass] uint32 ClearKeyManagementServicePort();
  [description("设置用于批量激活的 KMS 查找域。") : Amended ToSubclass] uint32 SetKeyManagementServiceLookupDomain([in] string LookupDomain);
  [description("清除以前配置的所有 KMS 查找域。") : Amended ToSubclass] uint32 ClearKeyManagementServiceLookupDomain();
  [description("返回基于令牌的激活授予。") : Amended ToSubclass] uint32 GetTokenActivationGrants([out] string Grants[]);
  [description("返回基于令牌的激活质询。") : Amended ToSubclass] uint32 GenerateTokenActivationChallenge([out] string Challenge);
  [description("放置基于令牌的激活响应。") : Amended ToSubclass] uint32 DepositTokenActivationResponse([in] string Challenge,[in] string Response,[in] string CertChain);
  [description("设置为 VL 客户端配置的激活方法。") : Amended ToSubclass] uint32 SetVLActivationTypeEnabled([in] uint32 ActivationType);
  [description("清除为 VL 客户端配置的所有以前指定的激活方法。") : Amended ToSubclass] uint32 ClearVLActivationTypeEnabled();
  [description("重置 SKU 的授权状态。") : Amended ToSubclass] uint32 ReArmSku();
};

[description("此类显示所安装的基于令牌的激活许可证的属性。") : Amended ToSubclass,AMENDMENT, LOCALE(0x0804)] 
class SoftwareLicensingTokenActivationLicense
{
  [key,description("软件授权服务内部用来唯一标识 XRML 许可证的 GUID。") : Amended ToSubclass] string ID;
  [description("用来向客户标识发行许可证(IL)的 GUID。除非与 ILVID 组合使用，否则此 ILID 不唯一。") : Amended ToSubclass] string ILID;
  [description("与 ILID 组合使用以允许客户控制其许可证版本的版本号。") : Amended ToSubclass] uint32 ILVID;
  [description("从发行许可证(IL)授权返回的 HRESULT。") : Amended ToSubclass] uint32 AuthorizationStatus;
  [description("UTC 日期时间，在此时间之后，发行许可证(IL)将无法用于令牌激活。") : Amended ToSubclass] datetime ExpirationDate;
  [description("由客户提供且包含在发行许可证(IL)中的可选文本。") : Amended ToSubclass] string Description;
  [description("Microsoft 用来提供其他元数据的可选文本。") : Amended ToSubclass] string AdditionalInfo;
  [description("卸载此许可证。") : Amended ToSubclass] uint32 Uninstall();
};
