我该如何让我的应用程序关闭并自动重复启动和关闭?
问题描述:
我想检查是否有时出现问题,有时不会发生。 因此,而不是关闭手动应用程序,并始终重新开始有什么可以使它自动直到问题将显示?或者将模拟窗体关闭的东西。我该如何让我的应用程序关闭并自动重复启动和关闭?
答
你可以试试这个
Timer timer;
public void StartTimer()
{
timer = new Timer();
timer.Interval = 5000; // 5 seconds
timer.Tick += new EventHandler(timer_Tick);
timer.Start();
}
void timer_Tick(object sender, EventArgs e)
{
Process[] p = Process.GetProcessesByName("TheApp");
if (p.Length == 0) {
// Restart the app if it is not running any more
Process.Start(@"C:\Programs\Application\TheApp.exe");
} else {
p[0].CloseMainWindow();
}
}
使用计时器在一定intervalls调用的方法。当计时器滴答时,查看是否存在具有给定名称的进程。如果它存在关闭它的主窗口(不要只是杀死它)。如果它不存在,请启动它。
答
如何编写一个简单的蝙蝠程序来杀死你的应用程序并重新启动它?查找控制台的“Taskkill”命令。如果我必须杀死记事本,我将使用“taskkill/f/im notepad.exe”
您可以让它需要按键才能执行迭代并在杀死应用程序之前诱发延迟。
答
只是为了好玩,如果你真的想做点什么,尝试一个简单的C#应用程序,执行以下操作:
for (int i = 0; i < 100; ++i)
{
Process proc = Process.Start("ExecutablePath");
Thread.Sleep(1000);
proc.Kill();
}
为什么不发布您的实际问题? – 2012-08-07 20:30:31
我假设你想通过IDE做这个陷阱?否则,只需编写一个批处理文件。我们需要更多的信息。 – 2012-08-07 20:36:10