我们在一些自动化测试拆解中使用taskkill.exe
,其中一些涉及必须关闭WPF应用程序。
我发现如果打开多个窗口,taskkill将终止活动窗口而不是整个应用程序。我们宁愿不必使用/ F标志,因为这不允许应用程序干净地关闭并使我们的数据库“脏”。
在我们采取完全不同的方法之前,有没有人遇到这个问题并找到了解决方案,或者有任何想法?我能找到的最接近的是将Application.Current.ShutdownMode
设置为OnMainWindowClose
,但当执行taskkill
时主窗口不是前窗时,这当然无效。
答案 0 :(得分:0)
也许Process类可以帮助你。
Process[] p = Process.GetProcessesByName("appname");
p[0].CloseMainWindow();