2015-06-27 76 views
1

我想在python中创建一个脚本,它可以获取有关我的网络中的机器的多个信息(如CPU名称,网络适配器)。如何在Python中使用WMI连接到VM?

该脚本目前正在我的机器上使用wmi.WMI()(或wmi.WMI('localhost'))进行连接。

但现在我想看看它是否也适用于其他机器。为此,我安装了VMWare并设置了一台虚拟机(运行Windows XP)。我想知道如何连接到它。

我读过,你可以简单地使用wmi.WMI([machine name or IP]),但在IP ipconfig给我似乎没有工作。我收到错误The RPC server is unavailable

有人可以帮我吗? 预先感谢您。

+0

http://stackoverflow.com/questions/12970303/control-hyper-v-vms-with-python –

+0

是的,我试图弄清楚这一点,但在我的谷歌搜索中遇到过这样的链接。但我真的不明白这与我的问题有什么关系。我试图弄清楚的是如何通过WMI连接到我的虚拟机。 –

回答

0

你可以做的一件事情,我发现有帮助的是在while True循环内使用try...except声明。这会反复强制WMI连接到机器,并且只有在连接建立后才会中断。例如,在RPC server is unavailable错误的情况下:

while True: 
    try: 
    comm = wmi.WMI([servername] user=[username] password=[password]) 
    except wmi.x_wmi: 
    continue 
    else: 
    break 

这应该有所帮助。