找回密码
 加入
搜索
查看: 2899|回复: 3

[系统综合] 关于使用WMI函数查询Win 2008 R2服务状态的问题

[复制链接]
发表于 2013-4-25 12:46:58 | 显示全部楼层 |阅读模式
各位好,之前一直使用WMI函数查询目标计算机(Windows XP)服务的状态,但发现原有函数在Windows 2008 R2中无法使用,请问如何修改可以实现呢?
MsgBox("","",_wmi_getserviceStarted(".","Print Spooler"))

Func _wmi_getserviceStarted($ip,$Caption)
        Local $objWMIService = ObjGet("winmgmts:\" & $ip& "\root\CIMV2")
        $colItems = $objWMIService.ExecQuery("SELECT * FROM Win32_Service", "WQL",48)
        For $objItem In $colItems
                        If $objItem.Caption =$Caption  Then Return $objItem.Started;表示服务是启动(true)还是停止(false)
        Next
EndFunc
发表于 2013-4-25 14:14:07 | 显示全部楼层
 楼主| 发表于 2013-4-26 09:30:12 | 显示全部楼层
回复 2# 鸟人

谢谢指导,测试了一下API部分好像只能检测本机的服务状态,而WMI不适用于64位的2008
 楼主| 发表于 2013-4-27 15:43:07 | 显示全部楼层
本帖最后由 fuinei 于 2013-6-8 13:34 编辑

请问能否使用WMI方式查询windows 2008 R2系统服务状态呢?
您需要登录后才可以回帖 登录 | 加入

本版积分规则

QQ|手机版|小黑屋|AUTOIT CN ( 鲁ICP备19019924号-1 )谷歌 百度

GMT+8, 2024-12-23 04:38 , Processed in 0.081259 second(s), 23 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表