Mit HWND Programmnamen herausfinden
-
Wenn ich das HWND eines Fensters habe, wie kann ich, dann den Namen des Fensters auslesen?
-
GetWindowText(hwnd,buf,bufsize)
MfG SideWinder
-
Danke

-
Ich seh gerade, dass ich mit GetActiveWindow() nur das aktive Fenster meines Programmes bekomme und nicht das aktive Fenster von anderen Programmen.
Wie kann ich, denn ermitteln welcher Prozess bzw. welches Fenster den Focus hat (von dem möchte ich nämlich den namen).
-
SideWinder schrieb:
GetWindowText(hwnd,buf,bufsize)
MfG SideWinderdamit kriegste das, was in der titelzeile steht. den 'programmnamen' bekommt man z.b. so:
void NameFromHwnd (HWND hwnd, char *name, DWORD namesize) { DWORD pid; HANDLE hprocess; HINSTANCE hinst; hinst = (HINSTANCE)GetWindowLong (hwnd, GWL_HINSTANCE); GetWindowThreadProcessId (hwnd, &pid); hprocess = OpenProcess (PROCESS_ALL_ACCESS, FALSE, pid); GetModuleFileNameEx (hprocess, hinst, name, namesize); CloseHandle (hprocess); }
-
Danke net, aber der Fenstername reicht mir bereits

-
Dachte er meint das mit "Programmname"

@SirLant: GetForegroundWindow() statt GetActiveWindow()
MfG SideWinder
-
Danke jetzt klappt es
