![]() |
Re: Der eigene Browser
Moin, Moin,
mit
Delphi-Quellcode:
setzt du entweder einen relativen Pfad, oder, wenn in "StartString" ein absoluter Pfad angegeben ist, einen ungültigen Pfad. Im ersten Fall kann es funktionieren, istr aber dann von der jeweiligen Umgebung abhängig. Also lieber grundsätzlich einen absoluten Pfad bestimmen!
'\'+startstring
// edit : Ja, siehe oben - das ist der bessere Weg |
Re: Der eigene Browser
Einige User legen mit dem IE schon Links zu verschiedenen Seiten auf Ihrem Desktop ab (.url Dateien).
Manche User sind einfach etwas speziell. :wall: Sie haben sich die Arbeitsweise mit den .url Dateien auf dem Desktop so angewöhnt. Daher der Umweg über das Auslesen der .url Datei. |
Re: Der eigene Browser
Zitat:
C:\Dokumentente...\UserA\Desktop |
Re: Der eigene Browser
Dann schau doch mal hier
![]() |
Re: Der eigene Browser
Zitat:
Einfach das Desktop-Verz. mit API-Funktion (ShellGetFolder ?) abfragen und mit FindFile() abgrasen. Alle UDL-Dateien auf dem Desktop und auch in Unterverz. werden so gefunden. |
Re: Der eigene Browser
So wie ich das verstehe, klicken die Anwender doppelt auf die url-Dateien, die mit dem Browser verknüpft sind. Der Browser öffnet sich also und der Dateipfad und Name werden dem Programm dabei übergeben.
Oder sehe ich das falsch? |
Re: Der eigene Browser
Zitat:
|
Re: Der eigene Browser
Welchen Wert hat denn ParamStr(1)?
Dir ist bewusst, dass ParamStr(1) der zweite Parameter des Programms ist? (also nicht ParamCount > 0) Außerdem solltest du nach der if-Abfrage, ob die Datei existiert in einen else-Zweig springen. |
Re: Der eigene Browser
Es funktioniert zwischenzeitlich.
Mein Problem war, dass ich das .url File nach dem ersten lesen nicht mehr geschlossen hatte. So konnte ich beim zweiten Programmaufruf nicht mehr aus der .url Datei lesen.
Delphi-Quellcode:
procedure TForm1.FormActivate(Sender: TObject);
var StartUrl:String; startString:String; begin {Paramter übergeben} if ParamCount>0 then startstring := ParamStr(1); if not fileexists(startstring) then begin starturl := 'http://srvapp02/Home/default.aspx'; end; {Parameter aus der .url Datei lesen} try MyUrl := TiniFile.Create(startstring); starturl := MyUrl.ReadString('InternetShortcut','URL','heise.de'); finally //showmessage (startstring); //showmessage (starturl); MyUrl.Free; end; {Searchway im Webbrowser1 laden} WebBrowser1.Navigate(WideString('http://srvapp02/p2way.aspx')); {.url Datei in WebBrowser2 laden / falls vorhanden} WebBrowser2.Navigate(WideString(starturl)); end; |
Re: Der eigene Browser
Die Anweisung ParamCount > 0 kannst du weglassen.
ParamStr gibt einen leeren String zurück, wenn der Index nicht vorhanden ist. Edit: Und wieso packst du das Öffnen der Datei nicht in einen Else-Zweig? Die Starturl ist doch schon gesetzt, wenn die Datei nicht geöffnet werden kann. LG, Xong |
Alle Zeitangaben in WEZ +1. Es ist jetzt 00:33 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