fuinei 发表于 2012-8-21 11:06:56

获取远程计算机操作系统类型和SP版本的方法

各位好,关于获取远程计算机操作系统类型在论坛中找到了一个贴子,测试成功MsgBox(0,1,GetOSVersion())


Func GetOSVersion()
       $objWMIService = ObjGet("winmgmts:{impersonationLevel=impersonate}!\\.\root\cimv2")
       $colItems = $objWMIService.ExecQuery("Select * from Win32_OperatingSystem")
       For $os In $colItems
      return $os.Caption&" "&$os.Version
       Next
EndFunc请问有什么方法可获取远程计算机系统已安装的Service Pack版本吗?
另外,除了WMI方式外,请问还有其它的方法(如使用注册表)可能获取远程计算机的系统版本和SP信息呢?

menfan1 发表于 2012-8-21 12:51:19

C-S结构就可以啊

fuinei 发表于 2012-8-21 19:22:57

回复 2# menfan1
C-S结构??不太理解,能否指点一下

xiaowo 发表于 2012-8-21 21:01:21

客户端-服务器 模式,至于如何实现,我也想学习

fuinei 发表于 2012-8-22 18:26:48

期待高手的出现

fuinei 发表于 2012-8-23 18:19:02

请高手指点,谢谢!

lxwlxwayy 发表于 2012-8-24 22:58:26

去天空找下吧

502762378 发表于 2012-8-25 21:11:51

看以下得到的字符窜,结合windows版本历史,全然能解决你的问题$ip = ""
$ver = FileGetVersion("\\"&$ip&"\c$\Windows\System32\cmd.exe")
MsgBox(0,$ip& "的windows版本为:", $ver)还有作为域管理员搞C\S多此一举,可以远程执行想要得到信息的脚本给对方,回执返回到一个公档即可

fuinei 发表于 2012-8-27 18:52:07

回复 8# 502762378

谢谢502762378兄的指导!
我也在注册表中找到对应的键值了,该键值适用于XP/2003,其它的还没有测试
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion
PartductName为操作系统版本
CSDVersion为SP版本
但找了很久就是没有办法确定系统的具体版本,如XP专业版还是XP家庭版,不知道有没有比较通用的判断方法呢?
页: [1]
查看完整版本: 获取远程计算机操作系统类型和SP版本的方法