我希望在不使用VMI类 Win32_OperatingSystem 的情况下使用VBScript获取Windows版本(比如操作系统)。有办法吗?
我希望这样做的原因是因为我在NT机器上运行VB脚本,它不支持WMI,而且我无法找到适用于NT 4.0的WMI的可安装程序。如果我在WMI上不依赖并且更喜欢在没有使用VBScript的WMI的情况下获取Windows版本,那也不错。
请帮助!!
谢谢,
拿烟</ P>
答案 0 :(得分:0)
假设无法离开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)之后,阻止所有主机的所有协议和端口,除非基本功能明确需要。
答案 1 :(得分: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