winfrom关闭别的应用程序的MessageBox弹窗
可以使用以下代码在关闭 Winform 时关闭其他应用程序的 MessageBox 弹窗:
using System;
using System.Diagnostics;
using System.Windows.Forms;
namespace WinformCloseMessageBox
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void Form1_FormClosing(object sender, FormClosingEventArgs e)
{
// 遍历所有进程
foreach (Process process in Process.GetProcesses())
{
try
{
// 判断进程是否有弹窗
if (process.MainWindowTitle.Contains("MessageBox"))
{
// 关闭弹窗
process.CloseMainWindow();
process.WaitForExit();
}
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
}
}
}
}
在 Winform 的 FormClosing 事件中遍历所有进程,判断进程的标题是否包含 "MessageBox",如果有则关闭弹窗。注意,这种方法可能会误关闭其他应用程序的弹窗,所以需要谨慎使用。
原文地址: https://www.cveoy.top/t/topic/qih 著作权归作者所有。请勿转载和采集!