无法在PowerShell的远程会话中执行可执行文件

3zwtqj6y  于 2023-04-30  发布在  Shell
关注(0)|答案(2)|浏览(160)

我在NAS上有一些脚本,我试图在远程PC上启动存储在NAS上的一些安装程序。我有我的PC,我在VS代码中启动了一个远程PSSession,并且使用管理凭据,我能够在远程PC上执行和调试我的脚本。查看日志时,我注意到我的脚本在远程启动时不会启动任何可执行文件。如果我在该PC上本地启动脚本,它工作得很好。我想这是一个许可或政策的问题,但没有帮助我。甚至这个链接https://ss64.com/ps/enable-wsmancredssp.html找到了一个类似的问题没有帮助。

每一个帮助都将得到赞赏!

这就是我做的

Enter-Pssession -computername <remotepc> -credentials <admincredentials>

输入密码我就进去了

set-executionpolicy -executionpolicy bypass -scope process

然后我试着直接发射

& '.\Firefox Installer.exe'

start-process '.\Firefox Installer.exe'

但是在远程PC上什么也不发生。如果我启动启动进程,VS Code上的终端会卡住。

uxhixvfz

uxhixvfz1#

不支持在PowerShell远程处理会话中启动 GUI 应用程序,因为为调用方请求提供服务的服务器组件在不可见的窗口工作站中运行,并且远程处理协议仅基于将 *PowerShell命令 * 的输出(包括 * 非交互式 * 控制台程序的输出)传送回调用方。

你有两个选择:

  • 对于安装程序-如果支持的话-传递适当的命令行选项以 * 静默运行 *,即。即 * 不显示GUI并且不需要用户交互 *。
  • 使用远程桌面会话代替,在那里您可以自由启动GUI应用程序。
9q78igpj

9q78igpj2#

我建议尝试创建一个批处理(。 bat ),打开powershell这是我通常如何超越一些.喜欢
BatchtoOpenprogram.bat

C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe -File "C:\path\filename.ps1"

然后运行。bat代替远程powershell

相关问题