如何从命令行使用参数启动存储在UNC共享中的程序?

有一个我们使用的内部程序,它存储在UNC共享中,以便更新是透明的。 我想提供一些命令行参数,如下所示:

\\server\share\in_house_thingy.exe myusername mypassword 

但我似乎无法让它在CMD或PowerShell或通过快捷方式工作。

任何人有任何想法?

对于快捷方式,请将目标更改为:

 "\\server\share\in_house_thingy.exe" myusername mypassword 

除非你真的想要使用PowerShell来做这个工作。

你可以使用:

 $app = '\\server\share\in_house_thingy.exe' $arguments = 'myusername mypassword' $process = [System.Diagnostics.Process]::Start($app, $arguments) 

$ process对象将为您提供一个实时流程对象,如果您想从该流程获取退出代码或其他信息。

在当前(unc)路径的批处理文件中使用%~dp0 ,包括结尾\

在PowerShell脚本中使用这个当前(unc)路径没有拖尾\

 $0 = $myInvocation.MyCommand.Definition $dp0 = [System.IO.Path]::GetDirectoryName($0) 

我刚刚注意到有一个.CMD文件将文件从共享复制到临时目录并在本地运行。

如果没有更好的解决方案,你们都可以投这个答案,那就行了。