![]() |
Neuen Pfad in bestehendem Explorer-Fenster öffnen
Hallo,
Ich suche eine Möglichkeit, ein bestehendes Explorer-Fenster durch mein Programm zu zwingen zu einem bestimmten Pfad zu navigieren. Die Suchfunktion habe ich schon bemüht, leider letztlich erfolglos: Ich habe mal versucht über IShellBrowser.BrowseObject zum Ziel zu kommen, aber bekam immer eine AccessViolation; auf der ![]() Ist mein Wunsch vielleicht gar nicht erfüllbar? Würde mich über Antworten freuen. Grüße Cleaner |
Re: Neuen Pfad in bestehendem Explorer-Fenster öffnen
Schau Dir mal die TWebbrowser Komponente an. Damit sollte Dein Problem lösbar sein. Ich weiss jetzt nicht genau ob ein neues IE Fenster aufgeht, aber auf ne Seite navigieren funktioniert damit problemlos.
Gruss raeschnix |
Re: Neuen Pfad in bestehendem Explorer-Fenster öffnen
Folgendes Code-Fragment lässt alle offenen Browserfenster Delphipraxis.net anzeigen:
Delphi-Quellcode:
uses ...,SHDocVw_TLB;
procedure TForm1.Button2Click(Sender: TObject); var // sw : IShellWindows; i : Integer; it : OleVariant; sw : OleVariant; begin sw := CoShellWindows.Create; // sw := CreateOleObject('SHDocVw.ShellWindows'); for i := 0 to sw.Count-1 do begin it := sw.Item(i); it.Navigate('http://www.delphipraxis.net'); // it.Quit; end; end; |
Re: Neuen Pfad in bestehendem Explorer-Fenster öffnen
Das letzte ist genau das, was ich gesucht habe, danke shmia!
Ich würde jetzt allerdings gerne nur das zuletzt aktive Fenster ansteuern. Mit
Delphi-Quellcode:
gelingt es mir auch, den Handle / Titel des zuletzt aktiven Fensters zu erhalten, ich weiß aber nicht, wie ich diese beiden Codes zusammenführen soll. Konkret in shmias Lösung fehlt mir jetzt die Möglichkeit, die Titel der Fenster auszulesen; dann könnte ich nämlich
var
h: HWND; Buffer: array[0..255] of char; sTitle: string; begin h := FindWindow('ExploreWClass',nil); if h <> 0 then begin GetWindowText(h, Buffer, SizeOf(Buffer) - 1); if Buffer[0] <> #0 then sTitle := Copy(StrPas(Buffer), 1, SizeOf(Buffer)); end; [...] 1. Titel des zuletzt aktiven Explorers auslesen 2. mir mit shmias Code dieses Fenster holen 3. in diesem Fenster navigieren. Sorry, wenn das Problem trivial klingt, ich habe leider auf dem Gebiet keine Ahnung. Grüße Cleaner |
Re: Neuen Pfad in bestehendem Explorer-Fenster öffnen
Nach ein bisschen basteln hats doch noch geklappt, danke euch beiden nochmal für eure Hilfe.
Grüße Cleaner |
Re: Neuen Pfad in bestehendem Explorer-Fenster öffnen
kanst du deine lösung bitte auch mal posten, falls jemand dies benötigt (ich z.b.)
ich brauch nämlich die url des aktiven fensters und dein problem geht ja auch in die richtung |
Alle Zeitangaben in WEZ +1. Es ist jetzt 23:40 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz