Home  >  Q&A  >  body text

An error occurs when using python's wmi for remote connection.

# -*- 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, -2147 023174), None)>
None

What is this error? Can any expert explain it

This error is reported when I run the code after the host pings the virtual machine (remote computer), and the above error is still reported. What is the situation? Can any expert help me with the answer? Thank you.

PHP中文网PHP中文网2711 days ago1332

reply all(2)I'll reply

  • 仅有的幸福

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

    The error message is that the server is unavailable. You need to ensure that your remote server can be pinged, and the user and password must be correct.

    reply
    0
  • PHP中文网

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

    b'\xb7\xa2\xc9\xfa\xd2\xe2\xcd\xe2\xa1\xa3'.decode('gbk')
    '发生意外。'
    
    u'RPC \u670d\u52a1\u5668\u4e0d\u53ef\u7528\u3002 '
    'RPC 服务器不可用。 '

    reply
    0
  • Cancelreply