Tool zum Identifizieren von Anwendungen, die den "Fokus" anderer Programme stehlen

Nero Atreides

Lt. Commander Pro
Registriert
Jan. 2004
Beiträge
1.360
[Gelöst] Tool zum Identifizieren von Anwendungen, die den "Fokus" stehlen

Hallo zusammen,

habe seit vorgestern ein ziemlich weirdes Problem. Nachdem vorher alles einwandfrei lief, fing am Sonntag mit einem Mal Battlefield 3 an, "einfach so" in den Fenstermodus zu wechseln. Sobald ich die Maus bewege oder wieder eine Taste drücke, gehts wieder ins Vollbild, ruckelt dann aber für einige Sekunden übelst.

Beim Austesten habe ich dann bemerkt, dass irgendein Programm auch unter Windows anderen Anwendungen kurzzeitig den Fokus stiehlt, so dass zum Beispiel beim Schreiben einer Mail die danach folgenden Tastenanschläge "ins Leere laufen" (d.H. vom alten Fenster nicht mehr erfasst werden). Man bemerkt das auch durch ein kurzzeitiges "blinken" des Fensters, sieht man aber nur aus dem Augenwinkel sozusagen.

Das passiert alle 60-120 Sekunden (!), ist also extrem nervig.

Natürlich habe mal nachgesehen, was ich Sonntag am PC alles installiert habe, aber das war eigentlich nur der aktuelle Intel-AHCI-Treiber. Deinstallation hat nix gebracht. Dann hatte ich den Virenwächter GData im Verdacht, aber der war es auch nicht (deaktivieren, Ausnahme für Battlefield hinzufügen etc. brachte nichts). Apple iTunes/MobileMe/SyncingService wären auch noch Kandidaten, weil die sich ja ab und an updaten, war aber auch Fehlanzeige.

Frage: hat jemand von euch Ahnung, mit welchem Tool man rausfinden kann, welches Programm oder welcher Prozess den Fokus stiehlt? Ich habe es mal mit dem Process Explorer aus den SysInternals versucht, aber der zeigt ja alles nur in Echtzeit an. Kann man da auch irgendwie loggen? Worauf muss man dann achten?

Danke!
 
Zuletzt bearbeitet:
könntest versuchen bf3 die höchste Priorität zuzweisen. Vllt klappt es ja. Ein Tool fällt mir im mom nicht ein.
 
Media Player Classic Home Cinema kann das (Wenn dort der Vollbild beendet wird, dann steht dran von welchem Prozess dies ausgelöst wurde!)
 
@MD5003: bitte nochmal etwas genauer? Wo steht das dann dran?

Verstehe ich das richtig: ich lasse einfach den MPC im Vollbild laufen und wenn das passiert, loggt der irgendwo, welcher Prozess das war?
 
Wenn der MPC-HC das kann sollte es auch möglich sein ien passendes Tool zu programmieren.
 
Nero Atreides schrieb:
Ich habe es mal mit dem Process Explorer aus den SysInternals versucht, aber der zeigt ja alles nur in Echtzeit an. Kann man da auch irgendwie loggen?
Du kannst ja Process Explorer und BF3 gleichzeitig offen lassen, während BF3 im Fenstermodus läuft. Wenn deine Eingaben dann unter BF3 ins Leere gehen, siehst du (hoffentlich) sofort warum.
 
Adam Gontier schrieb:
Du kannst ja Process Explorer und BF3 gleichzeitig offen lassen, während BF3 im Fenstermodus läuft. Wenn deine Eingaben dann unter BF3 ins Leere gehen, siehst du (hoffentlich) sofort warum.

Ähm, vielleicht bin ich zu blöd, aber das habe ich schon versucht. Wenn BF3 in den Fenster-Modus geht, dann ist aber im Process Explorer alles noch genauso bunt wie vorher (ich glaube die Farben repräsentieren Prioritäten). Aber das geht einfach zu schnell, weil ja immer alles nach CPU-Time sortiert ist. Wenn also eine Anwendung einen Spike erzeugt, dauert das ja nichtmal eine Sekunde.

Wenn man nach etwas anderem Sortiert (zB PID), dann sieht man wiederum nur einen Teil aller Prozesse...
 
Klemmt vielleicht eine Taste ( Strg, Alt, usw....) deiner Tastatur...?
Bei mir klemmte auch mal eine Taste, und ich habe jedes mal unbewusst eine Tastenkombination gedrückt...
Da hat sich mein Rechner auch ungewohnt verhalten.... :-D
 
shiatzu schrieb:
Klemmt vielleicht eine Taste ( Strg, Alt, usw....) deiner Tastatur...?
Bei mir klemmte auch mal eine Taste, und ich habe jedes mal unbewusst eine Tastenkombination gedrückt...
Da hat sich mein Rechner auch ungewohnt verhalten.... :-D

Ne, das passiert eben auch OHNE dass man eine Taste drückt... man muss einfach nur warten :(
 
Es löst zwar das Problem nicht, aber es ist ein Workaround:

[HKEY_CURRENT_USER\Control Panel\Desktop]
“ForegroundLockTimeout”=dword:00030d40

Ändere den Wert auf auf etwas ziemlich hohes oder 0 (bei Null dürfte theoretisch keine Anwendung den Fokus stehlen). Die Angabe versteht sich in Millisekunden (hex-Format)

Is einen Versuch wert...

MfG, Thomas
 
How to detect a background program (in Windows 7) which steals active focus automatically?
Also Process Monitor laufen lassen und sobald der Fokus gestohlen wird, mit ALT + F4 den Verursacher schließen. Dann siehst du vielleicht welcher Prozess beendet wurde.
Nicht besonders "schön" und muss auch nicht funktionieren, aber einen Versuch ist es wert.

Ansonsten müsste man einen Hook installieren, der die ensprechenden WinAPI-Messages abfängt. Ist aber nicht ganz trivial (sicherer Umgang mit C++ und der WinAPI vorausgesetzt) und ungefährlich (kann im schlimmsten Fall das System zum Absturz bringen).
 
Mal geschaut ob ein Schädling da im Hintergrund läuft hast du auch ?
 
LÖSUNG

Wollte noch die Lösung posten. Mit Hilfe des Process Monitor habe ich herausgefunden, dass der Übeltäter die Windows-Fehlerberichterstattung war. Diese hat im Abstand von genau 60.000 ms (=60 Sek) einen Fehler der Anwendung "AppleMobileSyncService.exe" protokolliert und dann versucht nach weiteren 60 Sek. als "Gegenmaßnahme" diesen Dienst neu zu starten - was wieder nicht funktioniert und zu einer Fehlermeldung führte. Etc. pp....

Ursache ist das Apple-iTunes-Update auf Version 10.5.1.

Man kann den "AppleMobileSyncService.exe" deaktivieren, indem man Rechtsklick auf "Arbeitsplatz" > Verwalten > Dienste" dort den Entsprechenden Dienst auf "Deaktiviert" setzt. Das verhindert zwar die Auto-Erkennung von iPods, aber das ist mir sowas von egal. Dass gerade von den Apple-Jüngern mit "bei Qualität und Design sind wir die Allergeilsten" so eine unausgereifte Software kommt, ist schon lächerlich.
 
Zurück
Oben