我希望得到Windows版本(比如操作系統),而不使用使用VBScript WMI類Win32_OperatingSystem。有沒有辦法?方式獲取Windows版本而無需使用WMI類「Win32_OperatingSystem」
我希望這樣做的原因是因爲我在不支持WMI的NT機器上運行VB腳本,而我無法找到可安裝用於NT 4.0的WMI。如果我在WMI上不依賴於,並且寧願使用VBScript獲取沒有WMI的Windows版本,也是很好的。
請幫忙!!
感謝,
拿煙
我希望得到Windows版本(比如操作系統),而不使用使用VBScript WMI類Win32_OperatingSystem。有沒有辦法?方式獲取Windows版本而無需使用WMI類「Win32_OperatingSystem」
我希望這樣做的原因是因爲我在不支持WMI的NT機器上運行VB腳本,而我無法找到可安裝用於NT 4.0的WMI。如果我在WMI上不依賴於,並且寧願使用VBScript獲取沒有WMI的Windows版本,也是很好的。
請幫忙!!
感謝,
拿煙
假設是不可能的遷客NT4和RPC已啓用,您可以get it從註冊表:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\\BuildLab
%systemroot%\windows\system32\prodspec.ini
在部分[Product Specification]
has the information,其次通過「Product=
」,等號後面的OS版本的名稱。如果你需要VBScript代碼來提取這些信息,然後添加一個註釋,並且我將添加它。
在RPC可用的情況下,PSEXEC也是一個選項。
此外,如果您有活動目錄,那麼信息也存在,儘管如果您的重新映像過程有「問題」,它可能不具有權威性。如果您需要VBS代碼從AD中摘錄它,請發佈包含此請求的評論,然後添加它。
不用說,你應該離開NT4。幾年內沒有補丁。如果不可能,那麼考慮將系統虛擬化並將其放在配置良好的防火牆(如ISA或Outpost Agnitum)之後,以阻止除主要功能明確需要的所有主機的所有協議和端口。
你可以得到從ver
命令版本:
Set sh = CreateObject("WScript.Shell")
Set ver = sh.Exec("%COMSPEC% /c ver")
Do While ver.Status = 0
WScript.Sleep 100
Loop
version = ver.StdOut.ReadAll