使用vb.net中包含空格的参数启动exe

马里乌斯·舍尔(MariusSchär)

我需要做的:
我有一个路径(从工作快捷方式复制)到一个.exe,我需要从我的vb.net应用程序中启动它。遵循路径:

"C:\Program Files (x86)\Citrix\ICA client\pnagent.exe" /CitrixShortcut: (2) /QLaunch "Farm1:ADS @ Citrix"

我的问题:
我不知道该怎么做。我最好的猜测是

Process.Start("cmd", "/k " & path)

但这总是以cmd的回报而告终

'C:\Program' is not recognized as an internal or external ...

我知道这是由于路径未正确转义引起的,但我不知道如何正确执行此操作。我知道有关使用Double-Doubblequotes(“”)的信息,但我也无法完成该工作。

如果有人能指出比Process.Start()更好的方法,我也会非常高兴!

大卫

我认为您想要的Process.Start()重载是
Process.Start(programargs)。

...这会给你

Process.Start("C:\Program Files (x86)\Citrix\ICA client\pnagent.exe", "/CitrixShortcut: (2) /QLaunch ""Farm1:ADS @ Citrix"" ")

编辑/说明:
cmd /k启动命令外壳程序(又名“ DOS提示符”),但在运行指定命令后保持打开状态(相对于cmd /c执行命令然后关闭外壳程序的情况)。
通常,仅cmd当您要执行内置的ShellDIR时才开始COPY

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章