gpt4 book ai didi

c# Process.Start() 没有返回正确的响应

转载 作者:行者123 更新时间:2023-11-30 12:38:29 28 4
gpt4 key购买 nike

我正在开发一个程序,用户可以从该程序启动任何应用程序。该程序将存储启动的应用程序的进程 ID,因此它可以在用户需要时终止它。

Process application = new Process();
application.StartInfo.FileName = txtApplicationToOpen.Text;

if (application.Start())
{
Debug.WriteLine("started");
lstCurrentlyOpenApplications.Items.Add(txtApplicationToOpen.Text);
_openApplications.Add(application);
}

我面临的问题:

if(application.Start()) 中的部分被调用,只有当我打开 exe 文件或 excel 文件时(尽管 excel 文件返回的 PID 不会终止excel 程序)。

当我打开 mp3、mp4 或图像文件时,它没有进入 if 语句

在尝试获取进程ID时,返回如下错误

System.InvalidOperationException: No process is associated with this object.

最佳答案

您必须使用 ProcessStartInfo.UseShellExecute 才能“执行”文档(并让 Windows 找到与给定文件关联的程序)。在那里查看其他答案:ShellExecute vs. Process.Start .

没有那个标志,只能启动exe文件。

关于c# Process.Start() 没有返回正确的响应,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52126658/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com