Я пишу некоторый код, который хотел бы работать с любым окном, например с окном, созданным через Windows API, MFC, wxWidgets и т. Д.
Проблема в том, что для некоторых вещей мне нужно использовать тот же поток, который создал окно, которое во многих случаях просто находится в цикле сообщений.
Моей первой мыслью было отправить сообщение обратного вызова в окно, которое затем вызвало бы функцию в моем коде, когда оно получит сообщение, используя один из параметров и указатель на функцию некоторого вида. Однако для этого не существует стандартного сообщения Windows, и я не могу создать собственное сообщение, так как не управляю кодом Windows, поэтому не могу добавить необходимый код в обработчик сообщений для реализации обратного вызова ...
Есть ли другой способ получить поток, который создал окно для входа в мою функцию?
EDIT:
Джон Z предположил, что я зацепил сообщения Windows. Если я это сделаю, есть ли какой-нибудь способ получить «идентификаторы» для пользовательских сообщений без риска конфликта с любыми пользовательскими сообщениями, которые уже есть в окне?
Например, я мог бы сделать
WM_CALLBACK = WM_APP+1
Но если подключаемое окно уже что-то сделало с WM_APP + 1, я столкнусь с проблемами.
EDIT2:
только что найден RegisterWindowMessage:)