# -*- 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通虛擬機器(遠端電腦)之後,運行程式碼,還是以上的報錯,這又是什麼情況呢?哪位高手幫忙解答一下,謝謝。
看錯誤提示是伺服器不可用啊,你需要確保你遠端的伺服器可以ping通,另外使用者和密碼要對的上。
雷雷