0

我正在编写一个引用多个外部实用程序和防病毒应用程序的界面。在这种情况下,我有一个菜单,其中包含 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();” 是突出显示的内容。如您所知,这是简单的流程调用。我一直在谷歌,这个论坛和其他人,但我似乎没有提出正确的问题。

4

2 回答 2

0

启用心理调试器。. .

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

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

于 2012-06-14T18:26:25.193 回答
0

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

于 2012-06-14T18:17:47.523 回答