AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Win32/Win64 API (native code) Delphi Applicationhandle eines Fensters ermitteln
Thema durchsuchen
Ansicht
Themen-Optionen

Applicationhandle eines Fensters ermitteln

Ein Thema von VizeTE · begonnen am 25. Jul 2006 · letzter Beitrag vom 26. Jul 2006
Antwort Antwort
Seite 1 von 2  1 2      
VizeTE

Registriert seit: 31. Dez 2002
178 Beiträge
 
Delphi 5 Enterprise
 
#1

Applicationhandle eines Fensters ermitteln

  Alt 25. Jul 2006, 12:27
Hallo,

ich habe ein beliebiges Handle eines Fensters und möchte das Application-Handle des Programms ermitteln. Gibt es dazu eine einfache Lösung?

Eine Idee wäre es über "ParentWindow" sich vorzuarbeiten. Aber woher weiß ich bei der Application angekommen bin? Gibt es dann kein Parent mehr? Vielleicht gibts ja schon eine Funktion dafür?
  Mit Zitat antworten Zitat
Angel4585

Registriert seit: 4. Okt 2005
Ort: i.d.N.v. Freiburg im Breisgau
2.199 Beiträge
 
Delphi 2010 Professional
 
#2

Re: Applicationhandle eines Fensters ermitteln

  Alt 25. Jul 2006, 12:28
wozu genau benötigst du dieses Handle?
Martin Weber
Ich bin ein Rüsselmops
  Mit Zitat antworten Zitat
VizeTE

Registriert seit: 31. Dez 2002
178 Beiträge
 
Delphi 5 Enterprise
 
#3

Re: Applicationhandle eines Fensters ermitteln

  Alt 25. Jul 2006, 12:34
Meine Anwendung öffnet ab und an ein Fenster.
Bevor sie das macht hole ich mir das Handle des Fensters, daß gerade den Fokus hat. Wenn es sich nicht um ein Fenster meiner Anwendung handelt minimiert sich meine Anwendung nachdem das eben geöffente Fenster geschlossen wurde.
Ich möchte also die Application-Handle des Fensters mit dem Handle meiner Application vergleichen.
  Mit Zitat antworten Zitat
Angel4585

Registriert seit: 4. Okt 2005
Ort: i.d.N.v. Freiburg im Breisgau
2.199 Beiträge
 
Delphi 2010 Professional
 
#4

Re: Applicationhandle eines Fensters ermitteln

  Alt 25. Jul 2006, 12:41
probiers doch mal mit Application.Handle
Martin Weber
Ich bin ein Rüsselmops
  Mit Zitat antworten Zitat
VizeTE

Registriert seit: 31. Dez 2002
178 Beiträge
 
Delphi 5 Enterprise
 
#5

Re: Applicationhandle eines Fensters ermitteln

  Alt 25. Jul 2006, 12:51
Naja dann habe ich das Handle meiner Application aber mit was soll ich das vergleichen? Also brauch ich ja noch das Application-Handle des Fensters, welches im Vordergrund war.
  Mit Zitat antworten Zitat
Angel4585

Registriert seit: 4. Okt 2005
Ort: i.d.N.v. Freiburg im Breisgau
2.199 Beiträge
 
Delphi 2010 Professional
 
#6

Re: Applicationhandle eines Fensters ermitteln

  Alt 25. Jul 2006, 13:00
schau mal hier
Martin Weber
Ich bin ein Rüsselmops
  Mit Zitat antworten Zitat
Benutzerbild von Union
Union

Registriert seit: 18. Mär 2004
Ort: Luxembourg
3.487 Beiträge
 
Delphi 7 Enterprise
 
#7

Re: Applicationhandle eines Fensters ermitteln

  Alt 25. Jul 2006, 13:01
Du könntest auch Dein Hauptfenster mit GetAncestor(handleDesGefundenenFensters, GA_ROOT) vergleichen.
Ibi fas ubi proxima merces
sudo /Developer/Library/uninstall-devtools --mode=all
  Mit Zitat antworten Zitat
VizeTE

Registriert seit: 31. Dez 2002
178 Beiträge
 
Delphi 5 Enterprise
 
#8

Re: Applicationhandle eines Fensters ermitteln

  Alt 25. Jul 2006, 15:48
Zitat von Angel4585:
schau mal hier
Da habe ich dann ja das Handle des Fensters und nicht der Application.

Zitat von Union:
Du könntest auch Dein Hauptfenster mit GetAncestor(handleDesGefundenenFensters, GA_ROOT) vergleichen.
Das klingt erstmal nach dem was ich suche aber wenn ich es ausprobiere klappt es leider nicht. Wenn ich in meinem Programm noch ein Fenster geöffnet hat dann bekomme ich nicht das Handle meines Hauptfensters.
  Mit Zitat antworten Zitat
Benutzerbild von Union
Union

Registriert seit: 18. Mär 2004
Ort: Luxembourg
3.487 Beiträge
 
Delphi 7 Enterprise
 
#9

Re: Applicationhandle eines Fensters ermitteln

  Alt 25. Jul 2006, 15:51
Poste mal ein Code-Gerüst. Wenn wir genau wissen, was Du machen willst können wir auch besser helfen. Wenn Du mit GetAncestor nicht weiter kommst, dann versuche es doch auf die Harte Tour mit GeModuleFileName...
Ibi fas ubi proxima merces
sudo /Developer/Library/uninstall-devtools --mode=all
  Mit Zitat antworten Zitat
Vjay

Registriert seit: 2. Dez 2003
Ort: Berlin/Eschede
481 Beiträge
 
Delphi 7 Professional
 
#10

Re: Applicationhandle eines Fensters ermitteln

  Alt 25. Jul 2006, 15:54
Also wenn du prüfen willst ob das Fenster, dass vorher den Focus hatte zu deiner Anwendung gehört, machst du das am einfahcsten (meiner Meinung nach) über die Prozess ID.

Du holst dir mit getWindowThreadProcessId die Prozess Id und vergleichst diese mit der aktuellen ProzessId, sieht dann etwa so aus:

Delphi-Quellcode:
function getWindowPID( const h: integer): dword;
begin
 getWindowThreadProcessId( h, result);
end;

function gehoertFensterZuMir( const handle: integer): Boolean
begin
 result:= getWindowPID( handle) = getCurrentProcessid;
end;
Wer später bremst ist eher tot.
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 22:20 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz