2016-07-26 169 views
0

我试图通过pyVmomi在客户机虚拟机内启动一项服务。我在官方文档中找不到太多,我搜索了网络无济于事。然后,我修改了我用来成功启动静默MSI安装的代码,只需使用参数'net start'和服务名称运行cmd.exe即可。它返回一个有效的进程ID,就好像它已经启动了cmd一样,但是该服务没有启动。我确实怀疑它是否是权限,但是在访客虚拟机中存在与权限(或缺少)相关的特定错误,并且不会引发此错误。我根本没有任何错误。有关如何通过pyVmomi启动服务的任何想法?pyVmomi在虚拟机上启动服务

def startService(ServiceName): 
    """ 
    starts a specified windows service [serviceName] 
    """ 
    pm = esxiContent.guestOperationsManager.processManager 
    ps = vim.vm.guest.ProcessManager.ProgramSpec(
     programPath='cmd.exe', arguments='net start ' + ServiceName, 
    ) 

    pid = pm.StartProgramInGuest(vm, creds, ps) 
    print(pid) 

回答

0

最后,我无法找到答案,而不是如此,我只是写了一个批处理文件里面net start命令,然后使用上述ProcessManager的执行此操作。