public partial class MainWindow: Window
{private static Semaphore singleInstanceWatcher;
private static bool createdNew;
public MainWindow()
{
// 确保不存在程序的其他实例
singleInstanceWatcher = new Semaphore(
0, // Initial count.
1, // Maximum count.
Assembly.GetExecutingAssembly().GetName().Name, out createdNew);
if (createdNew)
{
InitializeComponent();
//初始化方法
}
else
{
MessageBox.Show("程序已在运行中");
Environment.Exit(-2);
}
}
public void _init() {}
}