使用python的wmi进行远程连接的时候报错
问题描述
# -*- coding: utf-8 -*-import wmi,jsonimport timeimport tracebackimport syslogfile = ’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:123.bat' #此文件在远程服务器上cmd_callbat = 'start c:123.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!rn’) % ipaddress)log.close()print traceback.print_exc(file=sys.stdout)return False return Falseif __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通虚拟机(远程计算机)之后,运行代码,还是以上的报错,这又是什么情况呢?哪位高手帮忙解答一下,谢谢。
问题解答
回答1:看错误提示是服务器不可用啊,你需要确保你远程的服务器可以ping通,另外用户和密码要对的上。
回答2:b’xb7xa2xc9xfaxd2xe2xcdxe2xa1xa3’.decode(’gbk’)’发生意外。’u’RPC u670du52a1u5668u4e0du53efu7528u3002 ’’RPC 服务器不可用。 ’
相关文章:
1. docker网络端口映射,没有方便点的操作方法么?2. javascript - vue使用keep-alive不能保持滚动位置问题。3. angular.js - 在angular中,使用ng-repeat循环输出一个列表,然后节当中具体的一个参数值(是数值),然后整个循环节的值总数相加4. python - Fiddler+Android模拟器抓取app,json数据被加密了,如何解析?5. angular.js - $emit(,)的具体意思是什么作用呢?6. docker-compose 为何找不到配置文件?7. nginx - 关于vue项目部署到ngnix后出现的问题8. MySQL的SELECT...FOR UPDATE究竟起什么作用9. javascript - 一个字符串转换成数字,例子就是a="2,322.222",b=’1,211.21’,如何在angualr中执行相减10. java - mysql查询,这是怎么查询的呢

 网公网安备
网公网安备