搜尋

首頁  >  問答  >  主體

使用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/Virgin������.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 u670du52a1, (0, u'SWbemLocator', u'RPC u670du52a167002a10302002, N 147023174), None)>
None

這是什麼錯誤,有哪位高手可以解答一下

這個報錯我在主機ping通虛擬機器(遠端電腦)之後,運行程式碼,還是以上的報錯,這又是什麼情況呢?哪位高手幫忙解答一下,謝謝。

PHP中文网PHP中文网2755 天前1362

全部回覆(2)我來回復

  • 仅有的幸福

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

    看錯誤提示是伺服器不可用啊,你需要確保你遠端的伺服器可以ping通,另外使用者和密碼要對的上。

    回覆
    0
  • PHP中文网

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

    雷雷

    回覆
    0
  • 取消回覆