首页  >  问答  >  正文

使用python的wmi进行远程连接的时候报错

# -*- coding: utf-8 -*-
import wmi,json
import time
import traceback
import sys
logfile = 'logs_%s.txt' % time.strftime('%Y-%m-%d_%H-%M-%S', time.localtime())
#远程执行bat文件
def call_remote_bat(ipaddress,username,password):
    try:
        #用wmi连接到远程服务器
        conn = wmi.WMI(computer=ipaddress, user=username, password=password)
        filename=r"C:3.bat"   #此文件在远程服务器上
        cmd_callbat = "start c:3.bat"
        conn.Win32_Process.Create(CommandLine=cmd_callbat)  #执行bat文件
        print "执行成功!"
        return True
    except Exception,e:
        log = open(logfile, 'a')
        log.write(('%s, call bat Failed!\r\n') % ipaddress)
        log.close()
        print traceback.print_exc(file=sys.stdout)
        return False
    return False
if __name__=='__main__':

    call_remote_bat(ipaddress="192.168.110.131", username="Administrator", password="123456")
以上是远程连接的代码,运行和报错如下:

Traceback (most recent call last):
File "D:/untitled/Զ������.py", line 11, in call_remote_bat

conn = wmi.WMI(computer=ipaddress, user=username, password=password)

File "C:Python27libsite-packageswmi.py", line 1290, in connect

handle_com_error ()

File "C:Python27libsite-packageswmi.py", line 241, in handle_com_error

raise klass (com_error=err)

x_wmi: <x_wmi: Unexpected COM Error (-2147352567, 'xb7xa2xc9xfaxd2xe2xcdxe2xa1xa3', (0, u'SWbemLocator', u'RPC u670du52a1u5668u4e0du53efu7528u3002 ', None, 0, -2147023174), None)>
None

这是什么错误,有哪位高手可以解答一下

这个报错我在主机ping通虚拟机(远程计算机)之后,运行代码,还是以上的报错,这又是什么情况呢?哪位高手帮忙解答一下,谢谢。

PHP中文网PHP中文网2711 天前1331

全部回复(2)我来回复

  • 仅有的幸福

    仅有的幸福2017-05-18 10:46:27

    看错误提示是服务器不可用啊,你需要确保你远程的服务器可以ping通,另外用户和密码要对的上。

    回复
    0
  • PHP中文网

    PHP中文网2017-05-18 10:46:27

    雷雷

    回复
    0
  • 取消回复