[Frage]Finden der Application im Vordergrund
-
HWND handle = GetForegroundWindow(); wchar_t *string = new wchar_t[MAX_PATH]; long uint=GetWindowModuleFileNameW(handle,string,MAX_PATH); ShowMessage(string); delete string;
Damit hab ich versucht herauszufinden, welches Programm im Vordergrund ist. Das klappt aber nicht, ich bekomme zuverlässig C:\Windows\system32\vlc140.bpl zurück.
hat jemand ne bessere idee?
-
Sobald Laufzeit Packages aktiviert sind wird das entsprechende bpl zurückgemeldet.
Deaktiviere es einfach mal.MfG Stephan
-
danke,ok jetzt ist es besser, allerdings bekomme ich immer den pfad der application, nicht der im vordergrund, weiß jemand woran das leigt?
PS: Momentan löse ich den Code über einen Timer aus.
-
Ich würde mal nach Z-Order suchen.
Ich bin grad nicht sicher, ob man das Oberste Objekt (Fenster) auch so ermitteln kann, oder ob man die Prozesse durchgehen muss und dann die Position in der Z-Order abfragen.
Um den Pfad eines bestimmten Prozesses zu erlangen brauchst du:
GetModuleFileNameExFür den Prozessnamen:
GetModuleBaseName