运行快捷键时,c# . net Process.Start()返回null

本文关键字:Start 返回 null Process net 快捷键 运行 | 更新日期: 2023-09-27 17:49:25

好了,我知道我的问题了。我正在使用一些软件远程启动本地计算机上的程序。在这样做的过程中,我在网络上发送了一个我想让机器启动的程序的路径。它使用Process。启动并存储执行路径。然后,稍后,我重新发送该路径,并告诉它关闭与该路径关联的进程。

Process newProcess = Process.Start(startPath);
_runningProcesses.Add(new MCProcess(startPath, new Process);

有时,我将使用这个来调用快捷方式,我使用它是因为我想传递一些命令链接参数。

我用这个来调用。exe和。link(快捷扩展名),它运行程序很好。

但是,当将路径传递给快捷方式时,它返回的进程为空!因此,当我发送路径返回关闭程序时,进程为null,它不能关闭程序。

解决方案吗?

运行快捷键时,c# . net Process.Start()返回null

您不需要快捷方式来传递参数给程序,只需执行以下操作:

Process process = new Process();
process.StartInfo.FileName = "'"C:''my.exe'"";
process.StartInfo.Arguments = "arg1 arg2 arg3";
//...
process.Start();

在命令行中看起来像C:'my.exe arg1 arg2 arg3

如果需要使用快捷方式,只需取快捷方式的目标。获取快捷文件夹

的目标