Ich versuche ein Problem mit meiner Windows-Installation zu debuggen. Die Details sind nicht besonders wichtig, aber ich suche nach der Antwort auf die folgende Frage:Wie finde ich heraus, wer SendMessage angerufen hat?
explorer.exe empfängt eine WM_SETTINGCHANGE Nachricht. In WinDbg kann ich beim entsprechenden WndProc abbrechen. Wie finde ich heraus, wer die Nachricht gesendet hat? Das heißt: Gibt es eine Möglichkeit, dies auf den Prozess zurückzuverfolgen, der
SendMessage(HWND_BROADCAST, WM_SETTINGCHANGE, ...)
genannt wurde?
Der aufrufende Prozess blockiert, bis die Nachricht zugestellt wird. Es muss daher ein RPC-Mechanismus im Spiel sein. Ich weiß, dass es einen Weg gibt, den Anrufer in einem prozessübergreifenden COM-Anruf zu finden. Ich frage mich, ob es eine Möglichkeit gibt, das Gleiche für Windows-Nachrichten zu tun. –
... und ich frage nicht, ob meine App es herausfinden kann. Ich frage, ob WinDbg es herausfinden kann. –