Das Senden von Nachrichten gaukelt dem Programm das ja nur vor. Denk mal drueber nach wem welche Ressource gehoert. Nur weil ein Programm gerade ein Fenster im Vordergrund hat, gehoert dem Programm ja nicht die Maus! Das Programm bekommt davon nur die entsprechenden
Mauseingaben mit. Wohlgemerkt, das bedeutet noch nichtmal, dass es ueber jede einzelne Bewegung informiert wird.
Das kannst du ganz einfach testen. Ein gutes Beispiel ist mit Puttygen ein Schluesselpaar zu erzeugen. Einmal an der Console und einmal ueber eine Remote-Desktop-Verbindung. Du wirst feststellen, dass du dich ueber die RD-Verbindung fast totmachst bis der Fortschrittsbalken bei 100% ist. Das hat eben damit zu tun, dass die Veraenderung durch Mauseingaben ueber eine solche Verbindung nicht ganz so regelmaessig weitergeben wird.
Nur Nachrichten die das Programm explizit auswertet werden auch eine Wirkung haben. Allgemein bleiben Nachrichten aber das was der Name besagt, es handelt sich nicht zwangslaeufig um Befehle!
Uebrigens bearbeiten Fenster welche im Hintergrund sind keine (Maus)Eingaben (hoechstens ueber einen Hook), wodurch dein Ansatz genausowenig funktionieren wird wie
mouse_event.