0

我希望在不使用 VBScript的 WMI 类Win32_OperatingSystem的情况下获得 Windows 版本(比如操作系统) 。有办法吗?

我希望这样做的原因是因为我在不支持 WMI 的 NT 机器上运行 VB 脚本,并且我无法为 NT 4.0 找到可安装的 WMI。如果我不依赖WMI 并且更喜欢使用 VBScript 获得没有 WMI 的 Windows 版本,那也很好。

请帮忙 !!

谢谢,

纳扬

4

2 回答 2

0

假设不可能离开 NT4 并且启用了 RPC,您可以从注册表中获取它:

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\\BuildLab

%systemroot%\windows\system32\prodspec.ini 部分中的信息[Product Specification],后跟“ Product=”,等号后面是操作系统版本的名称。如果您需要 VBScript 代码来提取此信息,请添加注释说明,我将添加它。

如果 RPC 可用,PSEXEC 也是一种选择。

此外,如果您有活动目录,那么信息也在那里,但如果您的重新映像过程有“问题”,它可能不具有权威性。如果您需要 VBS 代码从 AD 中提取它,请在此请求中发表评论,我会添加它。

不过,不言而喻,您应该离开 NT4。多年没有补丁。如果不可能,则考虑虚拟化系统并将其置于配置良好的防火墙(如 ISA 或 Outpost Agnitum)之后,以阻止所有主机的所有协议和端口,除非必要功能明确需要。

于 2012-11-02T08:25:51.320 回答
0

您可以从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
于 2012-11-02T09:50:24.283 回答