将引用和不引用的参数传递给ProcessStartInfo

问题描述 投票:1回答:1

我正在尝试使用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个回答
0
投票

Lars实际上在他的评论中发布了正确答案,但不幸的是再次将其删除。

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

当我针对64位版本的test.exe运行它时,它工作正常。

谢谢你,拉尔斯。

© www.soinside.com 2019 - 2024. All rights reserved.