Вы пробовали использовать сообщения Windows?
Вы можете определить свои собственные сообщения, как это:
const UINT WM_YOUR_CUSTOM_MESSAGE = ::RegisterWindowMessage(_T("Your_custom_message"));
Вы получаете сообщение в стандартной функции WindowProc ():
WindowProc(UINT message, WPARAM wParam, LPARAM lParam)
Вы можете добавить один, переопределив функцию CWnd :: WindowProc () в своем принимающем приложении (используйте мастер классов в диалоговом окне в приложении с диалоговым окном MFC или в MainFrm в приложении MFC для одного / нескольких документов)
Вы отправляете сообщение всем окнам так:
ULONG ulRC = BSM_APPLICATIONS;
BroadcastSystemMessage(BSF_IGNORECURRENTTASK | BSF_FORCEIFHUNG, // do not send message to this process and don't hang
&ulRC, // broadcast only to applications
WM_YOUR_CUSTOM_MESSAGE, // message registered in previous step
0, // wParam message-specific value
0); // lParam message-specific value
Если вам необходимо передать некоторую информацию вместе с сообщением, вы также можете использовать значения wParam и lParam в сообщении.