C# Process.Start(路径)未在默认桌面应用程序中打开文件

C# Process.Start(路径)未在默认桌面应用程序中打开文件,c#,process.start,C#,Process.start,我正在尝试在默认桌面应用程序中打开下载的文件,例如,如果是“.txt”文件,则应在记事本中打开;如果是“.docx”文件,则应在未安装MS Word的情况下使用“wordpad.exe”打开。我正在尝试使用非常常见的“Process.Start”方法打开文件: System.Diagnostics.Process.Start(path); 其中“path”是文件的完整路径,即c:\somefolder\file.extension 代码的工作原理是,它在执行过程中没有任何错误,并对此进行了调试

我正在尝试在默认桌面应用程序中打开下载的文件,例如,如果是“.txt”文件,则应在记事本中打开;如果是“.docx”文件,则应在未安装MS Word的情况下使用“wordpad.exe”打开。我正在尝试使用非常常见的“Process.Start”方法打开文件:

System.Diagnostics.Process.Start(path);
其中“path”是文件的完整路径,即c:\somefolder\file.extension

代码的工作原理是,它在执行过程中没有任何错误,并对此进行了调试。当我检查任务管理器时,进程列表中有相关的进程notpad.exe,wordpad.exe,基于正在打开的文件。但是,桌面应用程序从未启动以显示文件。
请说明我遗漏了什么。

根据您提供的信息,没有太多信息可供参考。一个简单的步骤是检查变量的值,并将其粘贴到run中,以查看它是否实际执行。这可能是个小问题。

试试这个:

Process p = new Process();
p.StartInfo.UseShellExecute = true;
p.StartInfo.FileName = path;
p.Start();

有点不清楚,什么是桌面应用程序?其中System.Diagnostics.Process.Startpath;跑?这是一个服务应用程序吗?对不起,我指的是本机桌面应用程序,即txt文件的记事本,docx文件的写字板,看起来您想使用shell执行:try System.Diagnostics.Process.Startcmd/c start\+path+\;