API лицензирования доступны через slc.dll / Slpublic.h
, например SLSetCurrentProductKey :
HRESULT SLSetCurrentProductKey(
HSLC hSLC,
const SLID *pProductSkuId,
const SLID *pProductKeyId
);
Подробнее см. slpublic.h .
Чтобы изменить адрес сервера KMS, я думаю, вам нужно изменить его в реестре (HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\SoftwareProtectionPlatform
), а затем вызвать SlActivateProduct :
HRESULT SLActivateProduct(
HSLC hSLC,
const SLID *pProductSkuId,
UINT cbAppSpecificData,
const PVOID pvAppSpecificData,
const SL_ACTIVATION_INFO_HEADER *pActivationInfo,
PCWSTR pwszProxyServer,
WORD wProxyPort
);
К сожалению, эти битыне совсем хорошо документировано ...