C# 在c中打开资源管理器进程#

C# 在c中打开资源管理器进程#,c#,C#,我当前遇到一个问题,我需要创建一个应用程序,在凭据正确后打开Explorer.exe进程 我决定做的是,在它搜索数据库并且信息正确后,执行以下操作 Process process = new Process(); ProcessStartInfo startInfo = new ProcessStartInfo(); startInfo.WindowStyle = System.Diagnostics.ProcessWindowStyle.Hidd

我当前遇到一个问题,我需要创建一个应用程序,在凭据正确后打开Explorer.exe进程

我决定做的是,在它搜索数据库并且信息正确后,执行以下操作

        Process process = new Process();
        ProcessStartInfo startInfo = new ProcessStartInfo();
        startInfo.WindowStyle = System.Diagnostics.ProcessWindowStyle.Hidden;
        startInfo.FileName = "cmd.exe";
        startInfo.Arguments = "explorer.exe";
        process.StartInfo = startInfo;
        process.Start();
应用程序打开CMD但不启动资源管理器功能后

我做错了什么,或者还有别的办法


谢谢

我不确定您为什么要尝试从新的命令行进程打开Windows资源管理器,直接启动资源管理器即可:

Process process = new Process();
ProcessStartInfo startInfo = new ProcessStartInfo();
startInfo.UseShellExecute = false; //I don't need it, but the OP did.
startInfo.FileName = "explorer.exe";
startInfo.Arguments = "";
process.StartInfo = startInfo;
process.Start();

已验证在.NET 4.5、Windows 7上工作,我不确定您为什么要尝试从新的命令行进程打开Windows资源管理器,只需直接启动资源管理器:

Process process = new Process();
ProcessStartInfo startInfo = new ProcessStartInfo();
startInfo.UseShellExecute = false; //I don't need it, but the OP did.
startInfo.FileName = "explorer.exe";
startInfo.Arguments = "";
process.StartInfo = startInfo;
process.Start();

已验证在.NET 4.5上工作,Windows 7

您好,感谢Promt回复,我从一开始就尝试过,但出现了以下错误:System.dll中发生了“System.InvalidOperationException”类型的异常,但未在用户代码中处理其他信息:Process对象必须将UseShellExecute属性设置为false才能使用环境变量。我正在使用.NET4.5和Windows7@JuanAngelArias我把这段代码作为一个程序运行(我的主要任务就是那段代码)。它运行良好,并打开了资源管理器。也就是说,我添加了请求的行,它仍然运行良好,请继续添加。您好,感谢Promt回复,我从一开始就尝试了,但出现了以下错误:System.dll中出现了“System.InvalidOperationException”类型的异常,但未在用户代码中处理其他信息:Process对象必须将UseShellExecute属性设置为false才能使用环境变量。我正在使用.NET4.5和Windows7@JuanAngelArias我把这段代码作为一个程序运行(我的主要任务就是那段代码)。它运行良好,并打开了资源管理器。也就是说,我添加了请求的行,但它仍然运行良好,所以继续添加它。它是什么类型的“应用程序”?Winform?安慰ASP?服务?它在WPF中,但我以类的形式运行它它是什么类型的“应用程序”?Winform?安慰ASP?服务?它在WPF中,但我以类的形式运行它