读书人

当前WinForm程序强制关闭另一个WinFor

发布时间: 2013-09-17 13:35:59 作者: rapoo

当前WinForm程序强制关闭另一个WinForm程序,遇到的一个问题?
当前WinForm程序强制关闭另一个WinForm程序,
因为另一个程序在运行的时候会在任务栏上显示一个图标,
所以在强制杀除时,任务栏上的图标没有消失,要通过鼠标移到任务栏上的图片上,才会消失。
求如何解决?

代码如下:


/// <summary>
/// 杀死应用程序
/// </summary>
/// <param name="appname"></param>
protected void KillMainApp(string mainAppExe)
{
Process[] allProcess = Process.GetProcesses();
foreach (Process p in allProcess)
{
if (p.ProcessName.ToLower() + ".exe" == mainAppExe.ToLower())
{
if (p.CloseMainWindow() == false)
{
p.Kill();
Thread.Sleep(1500);
LogHelper.WriteLog("kill"+ p.ProcessName);
}
else
{
p.WaitForExit(5000);
LogHelper.WriteLog("close" + p.ProcessName);
}


}
}
}



c# winform
[解决办法]
refer : http://wenwen.soso.com/z/q217774381.htm
[解决办法]
试试用方法Shell_NotifyIcon,删除NotifyIcon。
[DllImport("shell32.dll")]
static extern bool Shell_NotifyIcon(uint dwMessage, [In] ref NOTIFYICONDATA pnid);

读书人网 >C#

热点推荐