vCenter 6.5を勉強していて、コミュニティサンプルが大いに役立ちますが、この特定の状況では何が起こっているのかわかりません。スクリプト:私が述べたPIDを持つプロセスを参照してくださいタスクマネージャでpyvmomi経由でプログラムを実行するとプロセスが作成されますが、それ以降は何も起こりません
from __future__ import with_statement
import atexit
from tools import cli
from pyVim import connect
from pyVmomi import vim, vmodl
def get_args():
*Boring args parsing works*
return args
def main():
args = get_args()
try:
service_instance = connect.SmartConnectNoSSL(host=args.host,
user=args.user,
pwd=args.password,
port=int(args.port))
atexit.register(connect.Disconnect, service_instance)
content = service_instance.RetrieveContent()
vm = content.searchIndex.FindByUuid(None, args.vm_uuid, True)
creds = vim.vm.guest.NamePasswordAuthentication(
username=args.vm_user, password=args.vm_pwd
)
try:
pm = content.guestOperationsManager.processManager
ps = vim.vm.guest.ProcessManager.ProgramSpec(
programPath=args.path_to_program,
arguments=args.program_arguments
)
res = pm.StartProgramInGuest(vm, creds, ps)
if res > 0:
print "Program executed, PID is %d" % res
except IOError, e:
print e
except vmodl.MethodFault as error:
print "Caught vmodl fault : " + error.msg
return -1
return 0
# Start program
if __name__ == "__main__":
main()
私はコンソールでそれを実行すると、それが正常にターゲット仮想マシンに接続して、プリント
Program executed, PID is 2036
、それが正しいことで作成されましたユーザーが、プロセスのGUI(calc.exe)はありません。人民元のクリックでは、プロセスを「展開」することはできません。 私は、このプロセスは特殊なパラメータで作成されている可能性があります、多分異なるセッションで。 さらに、バッチファイルを実行して実際に実行されているかどうかを確認しようとしましたが、答えはいいえ、バッチファイルは実行されません。
何か助け、アドバイス、手がかりが素晴らしいでしょう。
P.S.私は他のスクリプトを試して、VMにファイルを正常に転送しました。
P.P.S.私の英語には申し訳ありません。
更新:このようなプロセスはすべてセッション0で開始されます。