ioripalm 发表于 2015-8-31 08:27:46

[已解决]WMI如何远程连接机器来执行查询语句!

本帖最后由 ioripalm 于 2015-9-7 18:34 编辑

搜了论坛全部都是本地电脑的wmi示例,一个远程的可用的都没有
使用wbemtest管理规范测试器,输入用户名和密码可以正常连接,说明本机和远程的设置是没有问题的!
试了下面的代码,使用本地的时候,语句可以执行,换成远程就不能执行了!Dim $computer = "\\192.168.1.102"
Dim $Remoteuser = "administrator"
Dim $Remotepass = "asd123456"

$objlocator = ObjCreate("wbemscripting.swbemlocator")
$objWMIService = $objlocator.connectserver($computer, "\root\cimv2", $Remoteuser, $Remotepass)
$colItems = $objWMIService.ExecQuery("Select * from Win32_LogicalDisk")

For $objItem In $colItems
        ConsoleWrite("DeviceID: " & $objItem.DeviceID & @CRLF)
Next执行后就出错:
$colItems = $objWMIService.ExecQuery("Select * from Win32_LogicalDisk")
$colItems = $objWMIService^ ERROR

还有就是不同工作组的电脑如何连接?按照wmi管理规范测试器填写要求,如果不是一个工作组的话,用户名前面要加BigDom\administrator,这个如何添加
请问哪位大神给个示例!

感谢各位给出的示例,试了很多情况下出现未知的错误,最后还是用笨方式:
RunWait(@ComSpec & " /c " & 'wmic /node:"' & $PCIP & '" /user:"administrator" /password:"' & $PCPW & _
                        '" /output:' & @TempDir & "\" & $PCName & '.txt logicaldisk where "DriveType=3" get DeviceID,Size,FreeSpace,FileSystem', "", @SW_HIDE)
然后分析返回的TXT文本,得到想要的数据.暂时只能这么解决了!

ila 发表于 2015-8-31 14:11:04

发个例子:Dim $computer   ="192.168.1.25"
Dim $Remoteuser   ="administrator"
Dim $Remotepass   = "11111"
$strResult=''
$objlocator= ObjCreate("wbemscripting.swbemlocator")
$objWMIService = $objlocator.connectserver($computer,"root/cimv2",$Remoteuser,$Remotepass)
$colItems = $objWMIService.ExecQuery("Select * from Win32_LocalTime")

For $objItem In $colItems
    $strResult = $objItem.Month & "/" & _
            $objItem.Day & "/" & _
            $objItem.Year & _
            $objItem.Minute & ":" & _
            $objItem.Second & "(MM/DD/YYYY HH:MM:SS)"
Next


MsgBox(0, "", $strResult)

ila 发表于 2015-8-31 14:12:19

你这错误检查下autoit版本,换个版本试试

zxhou1 发表于 2015-8-31 15:47:17

{:face (114):}

ioripalm 发表于 2015-8-31 17:05:05

本帖最后由 ioripalm 于 2015-8-31 17:22 编辑

回复 3# ila


    试了3.3.9和3.3.12都不能运行,如果是本机,语句都可以运行,现在问题是非同工作组不能连上,但是用手动wbemtest管理规范测试器可以连接!

ila 发表于 2015-9-1 14:58:58

回复ila


    试了3.3.9和3.3.12都不能运行,如果是本机,语句都可以运行,现在问题是非同工作组不能 ...
ioripalm 发表于 2015-8-31 17:05 http://www.autoitx.com/images/common/back.gif


    填ip,不同工作组是否正常?

502762378 发表于 2015-9-4 08:55:40

computer没必要带斜杠
页: [1]
查看完整版本: [已解决]WMI如何远程连接机器来执行查询语句!