2010-11-21 7 views
6

Potrzebuję napisać procedurę obsługi komunikatów w mojej aplikacji konsoli, która obsługuje odebrane wiadomości. Na przykład, ja zarejestrować WM_Test i wysłać go do mojej aplikacji konsoli tak:Jak mogę sprawić, aby moja aplikacja konsoli otrzymywała wiadomości w oknie?

var 
    H: THandle; 
begin 
    H:= FindWindow('ConsoleWindowClass', nil); 
    PostMessage(H, WM_Test, 0, 0); 
end; 

Teraz chcę po otrzymaniu tej wiadomości w mojej aplikacji konsoli, aby pokazać okno komunikatu.

Czy mogę używać PeekMessage lub AllocateHWND w programach konsolowych?

Wiem, że mogę wykonać tę pracę z pipe, ale chcę wiedzieć, czy mogę to zrobić z komunikatem okna.

Odpowiedz

5

Tak, można. Użyj narzędzia AllocateHWND, aby utworzyć uchwyt okna. Następnie możesz ustawić różne właściwości (takie jak nazwa), dzięki czemu możesz je znaleźć za pomocą FindWindow.

Powiązane problemy