我们使用的是内部程序,它存储在UNC共享中,以便更新透明。我想提供一些命令行参数,如:
\\server\share\in_house_thingy.exe myusername mypassword
但我似乎无法在CMD或PowerShell中或通过快捷方式使用它。
有人有任何想法吗?
答案 0 :(得分:7)
您可以使用:
$app = '\\server\share\in_house_thingy.exe'
$arguments = 'myusername mypassword'
$process = [System.Diagnostics.Process]::Start($app, $arguments)
如果您想从该流程获取退出代码或其他信息,$ process对象将为您提供实时流程对象。
答案 1 :(得分:3)
对于快捷方式,请将目标更改为:
"\\server\share\in_house_thingy.exe" myusername mypassword
除非你真的想要使用powershell来完成这项工作。
答案 2 :(得分:1)
在批处理文件中使用%~dp0
作为当前(unc)路径,包括尾随\
将此用于当前(unc)路径而不尾随\
$0 = $myInvocation.MyCommand.Definition
$dp0 = [System.IO.Path]::GetDirectoryName($0)
答案 3 :(得分:0)
我刚注意到有一个.CMD文件将文件从共享复制到临时目录并在本地运行。
如果没有更好的解决方案,你们都可以投票给这个答案,那就行了。