Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Durch Fensterhandling den Verzeichnisname rausbekommen? (https://www.delphipraxis.net/91010-durch-fensterhandling-den-verzeichnisname-rausbekommen.html)

smart 27. Apr 2007 11:37


Durch Fensterhandling den Verzeichnisname rausbekommen?
 
Hallo Alle.

Kann man an Hand des Fensterhandlings bei einem Verzeichnisfenster den Verzeichnisname rausbekommen?

Gruß
Heike

Luckie 27. Apr 2007 11:44

Re: Durch Fensterhandling den Verzeichnisname rausbekommen?
 
Was verstehst du unter Fensterhandling? :gruebel:

CCRDude 27. Apr 2007 11:52

Re: Durch Fensterhandling den Verzeichnisname rausbekommen?
 
Und was unter Verzeichnisfenster? O.o

Explorerfenster können volle Pfade anzeigen (siehe Einstellungen), müssen aber nicht. Wenn sie es tun, reicht ja der Fenstertitel aus, das Fenster selber dürfte man anhand der Fensterklasse (oder DirectoryExists auf Fenstertitel, wenn auch etwas unsicherer ;) ) finden können.

Ansonsten kannst Du ja Unterfenster (sprich Controls) in den Explorerfenstern enumerieren, die Adreßleiste enthält ja auch eine Adresse, aber auch wieder nur optional vollständig (dafür immerhin per default imho), und wie's da unter Vista aussieht mit dieser neuen Adreßleiste, keine Ahnung.

ac'tivAid enthält glaub ich einige Funktionen, für die diese Option im Explorer eingeschaltet sein muss, daher dürfte es ohne wohl zumindest nicht mehr trivial sein.

smart 27. Apr 2007 11:58

Re: Durch Fensterhandling den Verzeichnisname rausbekommen?
 
Danke für die Antworten!

Wenn ich z.B. ein Fenster oder Programm aufrufe, gibt es da die Möglichkeit den Verzeichnisnamen zu bekommen. Vielleicht wenn man die Taskleiste ausliest? Ich habe leider keinen Ansatz wie man das macht.

Gruß
Heike

CCRDude 27. Apr 2007 12:06

Re: Durch Fensterhandling den Verzeichnisname rausbekommen?
 
MSDN-Library durchsuchenEnumWindows und MSDN-Library durchsuchenEnumChildWindows helfen Dir, sämtliche Fenster die überhaupt offen sind durchzugehen. Dazu dann noch ein MSDN-Library durchsuchenGetWindowTextLength/MSDN-Library durchsuchenGetWindowText, und Du hast alles für eine grobe Methode eben einzig über die Fenstertitel (die man natürlich noch verfeinern kann).

bitsetter 27. Apr 2007 22:05

Re: Durch Fensterhandling den Verzeichnisname rausbekommen?
 
Hi,

was verstehst du unter Fenster oder Programme aufrufen? Etwa ein Aufrufen mit Hilfe der Taskleiste oder durch das Starten der Programme?. :gruebel:
Falls du das Handle des Fensters kennst, könntest du mit Hilfe dieses Beitrages den Verzeichnisnamen zum Programm des Fensters herausbekommen.
Ein Aufruf könnte so erfolgen:
Delphi-Quellcode:
procedure TForm1.Button2Click(Sender: TObject);
var
  ProcessId : DWORD;
begin
  GetWindowThreadProcessID((*hWnd*), @ProcessId);
  Caption := AufrufParameter(ProcessId);
end;


Alle Zeitangaben in WEZ +1. Es ist jetzt 05:14 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