【发布时间】:2011-04-03 23:40:45
【问题描述】:
我们有一个自定义组件,它封装了 powershell 的一些功能,因此可以在 BizTalk 2006 中使用。对于大多数操作(检查文件路径、复制或移动文件)来说,这都可以正常工作。然而,我们需要远程启动一个 GUI 应用程序来进行一些处理。组件本身处理与远程盒子的连接,我们所要做的就是设置一些参数,然后告诉它执行命令
Start-Process -FilePath "path to exe" -ArgumentList "arguments for exe" -WorkingDirectory "workingdir for exe"
问题是这样的:如果我们在盒子本身的 powershell 命令行上运行它,它就可以正常工作。但是,当我们远程启动它时(从 BizTalk、从测试工具,甚至使用远程 Powershell 命令行和通过 Start-PSSession 连接),这个应用程序将短暂运行然后退出,而没有实际执行任何操作。我的怀疑是,因为有问题的 exe 需要加载 GUI 才能运行该进程,所以这就是导致问题的原因。我已经尝试了所有我能想到的方法,包括 -NoNewWindow 和 -WindowStyle 但无济于事。非常感谢任何帮助使这项工作正常进行。
注意:我们无法访问我们尝试运行的应用程序的源代码,因为它是较旧的 win32 应用程序,并且没有提供此应用程序的批处理或命令行版本。
【问题讨论】:
-
我会对回复感兴趣。我从未成功通过 PowerShell 远程处理使用 GUI 管理应用程序。似乎远程处理和应用程序虚拟化是尚未融合的想法。
-
有完整源代码的最终解决方案吗?
标签: powershell powershell-remoting