AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Win32/Win64 API (native code) Delphi Neuen Pfad in bestehendem Explorer-Fenster öffnen
Thema durchsuchen
Ansicht
Themen-Optionen

Neuen Pfad in bestehendem Explorer-Fenster öffnen

Ein Thema von Cleaner · begonnen am 28. Jun 2004 · letzter Beitrag vom 6. Aug 2004
Antwort Antwort
Cleaner
(Gast)

n/a Beiträge
 
#1

Neuen Pfad in bestehendem Explorer-Fenster öffnen

  Alt 28. Jun 2004, 10:37
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 MSDN Seite ist dann auch zu lesen, dass Applikationen dieses Interface nicht implementieren (sollen?).
Ist mein Wunsch vielleicht gar nicht erfüllbar? Würde mich über Antworten freuen.

Grüße

Cleaner
  Mit Zitat antworten Zitat
raeschnix

Registriert seit: 11. Jan 2004
Ort: Momentan in Umschulung
13 Beiträge
 
#2

Re: Neuen Pfad in bestehendem Explorer-Fenster öffnen

  Alt 28. Jun 2004, 11:35
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
  Mit Zitat antworten Zitat
shmia

Registriert seit: 2. Mär 2004
5.508 Beiträge
 
Delphi 5 Professional
 
#3

Re: Neuen Pfad in bestehendem Explorer-Fenster öffnen

  Alt 28. Jun 2004, 11:48
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;
Andreas
  Mit Zitat antworten Zitat
Cleaner
(Gast)

n/a Beiträge
 
#4

Re: Neuen Pfad in bestehendem Explorer-Fenster öffnen

  Alt 28. Jun 2004, 16:23
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:
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;
[...]
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
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
  Mit Zitat antworten Zitat
Cleaner
(Gast)

n/a Beiträge
 
#5

Re: Neuen Pfad in bestehendem Explorer-Fenster öffnen

  Alt 29. Jun 2004, 20:34
Nach ein bisschen basteln hats doch noch geklappt, danke euch beiden nochmal für eure Hilfe.

Grüße

Cleaner
  Mit Zitat antworten Zitat
Benutzerbild von Remote1
Remote1

Registriert seit: 22. Okt 2003
Ort: Dippoldiswalde
252 Beiträge
 
Delphi 6 Personal
 
#6

Re: Neuen Pfad in bestehendem Explorer-Fenster öffnen

  Alt 6. Aug 2004, 22:30
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
  Mit Zitat antworten Zitat
Antwort Antwort


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 15:07 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