有一个我们使用的内部程序,它存储在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文件将文件从共享复制到临时目录并在本地运行。
如果没有更好的解决方案,你们都可以投这个答案,那就行了。