Окно сообщения C ++ Win32 класс / пример - PullRequest
1 голос
/ 11 января 2009

Существует ли приложение класса / примера для окна только для сообщений, которое находится на C ++ Win32 ?

Ответы [ 3 ]

6 голосов
/ 11 января 2009

Из документов для CreateWindow :

hWndParent [in] Дескриптор родительского окна или окна владельца создаваемого окна. к создать дочернее окно или собственный окно, укажите действительный дескриптор окна. Этот параметр необязателен для всплывающих окон окна.

Windows 2000 / XP: Чтобы создать окно только для сообщений, укажите HWND_MESSAGE или дескриптор существующего окна только для сообщений .

Здесь - некоторый код из WebKit, который, я думаю, устанавливает окно только для сообщений для событий таймера.

Вот статья, в которой показан (возможно, чрезмерно) причудливый способ создания невидимого окна только для сообщений: http://www.codeguru.com/cpp/w-p/win32/tutorials/article.php/c12689

1 голос
/ 11 января 2009

Если я помню, стандартное решение состоит в том, чтобы создать простое окно без стилей с насосом сообщений, как обычно, но никогда не вызывать ShowWindow для него. Таким образом, вы можете получать и обрабатывать стандартные сообщения, такие как WM_QUERYENDSESSION, которые отправляются во все окна.

0 голосов
/ 11 января 2009

Окно только для сообщений используется, когда вам нужно обрабатывать сообщения Windows в потоке, но на самом деле вы не хотите отображать окно на экране.

Например, если вы хотите использовать таймер Windows, но у вас нет существующего окна пользовательского интерфейса, к которому можно привязаться.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...