2014-07-10 44 views
1

我想能夠腳本我的Windows激活檢查。我的代碼如下,第一行是我希望得到一些幫助的一點,其餘的主要是爲了讓我知道我想要實現的目標。批處理文件來檢查Windows激活狀態

if slmgr /dli = True (
    do something 
    ) else (
     do something else 
     ) 
    ) 

第一行永遠不會工作,我有它的方式,我明白,不知道如何去檢查激活狀態,重新所有幫助和建議表示讚賞。謝謝

回答

1
for /f "tokens=3 delims=: " %%a in (
    'cscript //nologo "%systemroot%\system32\slmgr.vbs" /dli ^| find "License Status:"' 
) do set "licenseStatus=%%a" 

if /i "%licenseStatus%"=="Licensed" (
    do something 
) else (
    do something 
) 

但slmgr的輸出完全本地化。它只能在英文區域使用。

+0

是否有可能使它適用於任何語言環境? –

+0

@NorbertBoros,'slmgr.vbs'嘗試從'.ini'文件中加載區域信息(請參閱LoadResourceData函數)。此文件的路徑由UI語言環境信息,完整腳本路徑和腳本文件名稱確定。如果找不到該文件,將使用英文區域設置。您可以簡單地將腳本複製到另一個地方('%temp%'?)並運行此腳本副本而不是原始副本。 –

相關問題