外部应用程序完成或取消后返回菜单

时间:2012-06-14 18:10:10

标签: c# .net windows process exit

我正在编写一个引用几个外部工具和反病毒应用程序的界面。在这种情况下,我有一个菜单,可以选择Malwarebytes,CCleaner,Windirstat等。

我的问题是,如果您取消外部程序,我会收到一个错误,整个界面出现调试错误"操作已被用户取消"。

我需要的是主界面重新启动,以便我可以选择其他工具,如果我取消或完成。

到目前为止,这是我的代码的主要部分。请记住,我现在已经使用c#进行了3天的编程:

private void ccleanerButton_Click(object sender, EventArgs e)
{
    //set p as new process
    Process p = new Process();
    //select the process file name
    p.StartInfo.FileName = "ccsetup.exe";
    //Start things up
    p.Start();          
}

当我调试(在Visual Studio C#2010 Express中)时," p.Start();"是突出显示的。正如您所知,它是一个简单的过程调用。我已经遍布谷歌,这个论坛和其他人,但我似乎没有提出正确的问题。

2 个答案:

答案 0 :(得分:0)

关闭进程的正确方法是使用CloseMainWindow,如果要关闭主GUI窗口和所有子窗口,或Kill,如果您要关闭GUI的子窗口。

答案 1 :(得分:0)

启用了心灵调试程序。 。

Process.Start正在抛出带有Message的Win32Exception,“系统找不到指定的文件”

解决方案:将StartInfo.Filename设置为您要执行的文件的完整路径。