【问题标题】:Passing quoted and unquoted arguments to ProcessStartInfo将带引号和不带引号的参数传递给 ProcessStartInfo
【发布时间】:2018-01-03 00:10:12
【问题描述】:

我正在尝试使用 ProcessStartInfo 将 .lnk 文件及其参数转换为以编程方式执行的进程。

.lnk 文件如下所示:

目标:

E:\Apps\RunAsDate\RunAsDate.exe 30\10\2017 00:00:00 "D:\MyTest\test.exe" 

执行于:

"D:\MyTest"

我在 test.exe 中有一个显示日期时间的函数,以便我可以检查它是否有效。对于 .lnk 文件,它可以完美运行。

我尝试了以下方法:

Dim nProc As New ProcessStartInfo
nProc.FileName = "E:\Apps\RunAsDate\RunAsDate.exe"
nProc.Arguments = "30\10\2017 00:00:00 ""D:\MyTest\test.exe"""
nProc.WorkingDirectory = "D:\MyTest"
nProc.UseShellExecute = True
Process.Start(nProc)

正在启动文件“D:\MyTest\test.exe”,但是日期参数丢失了,所以我在传递参数时一定做错了。

这里有什么错误?

我以管理员身份运行它。

【问题讨论】:

标签: vb.net processstartinfo


【解决方案1】:

Lars 实际上在他的 cmets 中发布了正确答案,但不幸的是又删除了它。

参数输入正确,但我运行 64 位版本的 RunAsDate 与 32 位版本的 test.exe。

当我在 64 位版本的 test.exe 上运行它时,它可以工作。

谢谢你,拉斯。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-10-31
    • 2023-04-02
    • 2020-03-05
    • 2016-11-08
    • 1970-01-01
    • 1970-01-01
    • 2015-11-21
    • 2014-04-13
    相关资源
    最近更新 更多