使用Powershell在虚拟机上远程运行可执行文件

时间:2018-09-19 12:15:57

标签: powershell executable virtual

设置涉及物理计算机(Windows 10),虚拟机(Windows 10)和内部服务器。

我要从物理计算机上在远程虚拟机上运行可执行文件。可执行文件(MyProgram.exe)已在远程虚拟机上。我使用的cmdlet是:

Invoke-Command -ComputerName Krypton -ScriptBlock {& "c:\users\qaauto\desktop\PrepareAssemblies"} -Credential ibwave\qaauto

我使cmdlet匿名,但我看到.EXE在远程VM上运行。但是,当它尝试读取我们服务器Vader上的文件时,它崩溃并发生异常。例外是:

System.IO.DirectoryNotFoundException:找不到路径'I:\ official \ QA \ tests \ Test parameters-Machine98.xml'的一部分。    在System.IO .__ Error.WinIOError(Int32 errorCode,可能是StringFullPath)    在System.IO.File.InternalCopy(String sourceFileName,String destFileName,布尔覆盖,布尔checkHost)    在System.IO.File.Copy处(字符串sourceFileName,字符串destFileName,布尔覆盖)    在PrepareAssemblies.Program.Main(String [] args)

在Powershell的命令提示符下,没有错误消息。该提示在cmdlet之后变为可访问,因此它不会挂起。

我确定服务WS-Management正在运行,并且已在远程虚拟机上正确配置,因为此cmdlet可以工作:

enter-pssession -computername Machine98 -credential <domain_name>\<username>

我使用的用户名是VM上的管理员,但我猜测,当我远程启动它时,.EXE不能以管理员身份运行。

您能帮助我找到解决方案的问题或提出另一种实现目标的方法吗?

非常感谢!

0 个答案:

没有答案