我有一个不能在一台机器上同时运行的应用程序(本机 C++、Windows)。我要实现的行为是这样的:在尝试运行应用程序的第二个实例时,第一个实例停止运行。
为此,我想使用 WinApi 函数 BroadcastSystemMessage() 类似于下面的示例。
当应用程序启动时,它会发送:
BroadcastSystemMessage(BSF_POSTMESSAGE, &dwRecepients, 0x666, 0, 0);
但是,当我在调试模式下运行我的应用程序时,它没有命中
case 0x666:
int iClose = 0 + 1;
break;
当我启动另一个实例时。其他消息已正确处理(WM_KEYDOWN、WM_ACTIVATE 等)。
我做错了什么?