Hallo, ich bin neu in Windows32 Programmierung und ich habe ein paar Fragen-:Anzeigen von Win32-Nachrichten
Wenn ich den folgenden Code in einem Programm verwenden, es funktioniert -:
while(GetMessage(&msg,NULL,0,0))
{
TranslateMessage(&msg);
DispatchMessage(&msg);
}
Aber wenn Ich ersetze null von GetMessage zu hwnd (das Handle des gerade erstellten Fensters) das scheint nicht zu schließen, es bleibt immer noch im Hintergrund laufen. Warum passiert das, wenn ich NULL durch hwnd ersetze, bedeutet das, dass ich Nachrichten für nur ein Fenster empfange, warum funktioniert das dann nicht ????
while(GetMessage(&msg,hwnd,0,0))
{
TranslateMessage(&msg);
DispatchMessage(&msg);
}
Durch die Art und Weise der Fenster-Funktion ist-:
LRESULT CALLBACK WinProc(HWND hWnd, UINT message,
WPARAM wparam, LPARAM lparam){
switch(message){
case WM_DESTROY:
PostQuitMessage(0);
break;
default:
return DefWindowProc(hWnd, message, wparam, lparam);
}
return 0;
}
Secondly-:
Gibt es eine Möglichkeit, alle Nachrichten zu einem bestimmten Fenster gesendet sehen ????
Thirdly-:
Was ist der Grund für Schreiben __stdcall (WINAPI), wenn meine Windows-Programme kompilieren ????
Eine schnelle Antwort würde geschätzt werden. Danke.
Im Hinblick auf den zweiten Teil Ihrer Frage, [Spy ++] (http://msdn.microsoft.com/en-us/library/dd460726.aspx) können Sie die Meldungen zeigen an bestimmte Fenster gesendet werden . –