Delphi-PRAXiS
Seite 1 von 4  1 23     Letzte »    

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Netzwerke (https://www.delphipraxis.net/14-netzwerke/)
-   -   Delphi Standardbrowser öffnen (https://www.delphipraxis.net/1509-standardbrowser-oeffnen.html)

Megabyte 4. Dez 2002 13:37


Standardbrowser öffnen
 
Hallo zusammen
habe im Forum folgenden Beitrag zu diesem Thema gefunden gefunden: http://www.delphipraxis.net/viewtopic.php?t=58
Nun habe ich folgendes programmiert:
Delphi-Quellcode:
procedure TForm3.Label4Click(Sender: TObject);
begin
 Uses ShellApi;
 Shell execute( 0, nil, 'http://www.delphipraxis.net', nil, nil, SW_SHOW);
end;

end.
Nun erscheint immer folgender Fehler: :twisted: :twisted:
Statement expectet but USES found
Undeclared indentifier : Shell
could not compile used Unit.X

:( Was mache ich falsch? Was muss ich deklarieren damit bei einem Click
auf das Label der Browser die gewünschte Webseite öffnet?

Danke für die Hilfe
cu Megabyte

theomega 4. Dez 2002 13:40

zwischen das shell und das execute muß irgendein Zeichen, entweder ein "_" oder gar nix!

Daniel 4. Dez 2002 14:15

Re: Standardbrowser öffnen
 
Hallo MegaByte,

zuerst Folgendes: Die Uses-Anweisung darf nicht innerhalb einer Prozedur stehen sondern folgt überlicherweise nach dem Schlüsselwort 'interface' oder 'implementation'. Schaue in Deiner Unit nach: Du findest dort bereits die Uses-Anweisung gefolgt von einer Liste von Units. Diese Liste verlängerst Du einfach um den Eintrag 'ShellAPI'.

Ansonsten musst Du nur das Leerzeichen zwischen 'Shell' und 'Execute' entfernen, da es sich in der Tat um einen Befehl namens 'ShellExecute' handelt.
:wink:

Delphi-Quellcode:
procedure TForm3.Label4Click(Sender: TObject);
begin
  Shellexecute( 0, nil, 'http://www.delphipraxis.net', nil, nil, SW_SHOW);
end;

Grüße,
Daniel

jbg 4. Dez 2002 14:35

Es wäre vielleicht besser, wenn man ShellExecute in diesem Fall als 2. Parameter ein 'open' anstatt nil übergibt. Wenn nil übergeben wird, wird die Standard Aktion ausgeführt, die nicht unbedingt 'open' sein muss.
Delphi-Quellcode:
ShellExecute(0, 'open', 'http://www.delphipraxis.net', nil, nil, SW_SHOW);

Das am meisten falsch geschriebene Wort steht natürlich auch wieder im Topic.

Es heißt: Standard, denn es hat nichts mit einer Art zu tun und auch nicht mit der "Art zu Stehen".

trebormillenium 4. Jan 2003 15:08

Hi
habe ne Frage, also ich habe auch den befehl genommen und wollte fragen ob man den noch erweitern kann? Also so das man den IE (oder was man immer nimmt) neu öffnet. Also Problem ist, das die URL dann im IE-Fenster geöffnet wird den ich schon geöffnet habe und in dem ich schon surfe! Wollte fragen ob es möglich ist das man ein neues IE-Fenster aufmachen kann und die Seite dann darin laden kann!

MFG
Trebor

Chewie 4. Jan 2003 17:09

Es wäre dann möglich, wenn du per ShellExecute nicht die URL aufrufst, sondern den Browser startest und die gwünschte Website als Parameter anhängst. Das Problem hierbei ist, dass 1. nicht jeder Browser diese Parameterübergabe unterstützen muss und 2. du zuerst herausfinden müsstest, welcher Browser sich auf dem System befindet und in welchem Ordner er ist. Aber möglich ist es.

trebormillenium 4. Jan 2003 17:24

Gut da ich noch nicht viel mit Delphi gemacht habe und das Programm eh nur für Windows XP sein soll hoffe ich das es kein Problem ist!

Könnten Sie mir verraten wie ich 1. Das Programm (Internet Explorer 6) ausführe und dann den Parameter dahinter schreibe?

Im Vorraus schonmal Dankeschön

Chewie 4. Jan 2003 18:00

Dort, wo im obigen Beispiel die URL angegeben wird, muss der Pfad zum IE hin. Und im nächsten Parameter werden die Parameter zum Öffnen übergeben.
Um die Delphi-Praxis anzuzeigen also folgendes geschrieben werden:
Delphi-Quellcode:
ShellExecute(Handle,'open','C:\Programme\Internet Explorer\IExplore.exe','www.delphipraxis.net',nil,SW_SHOW);
Falls der Pfad zum Browser anders sein sollte, muss dies natürlich angepasst werden.

MrSpock 4. Jan 2003 18:05

Hallo trebormillenium,

beachte aber, dass das Programm möglicherweise auch außerhalb deiner Umgebung laufen könnte. Wie oben schon erwähnt, solltest du versuchen, das Programm so zu schreiben, dass auch andere Browser wie Netscape, Opera oder Mozilla unterstützt werden. Denn es soll Leute geben, die können den M$ Browser überhaupt nicht leiden :roll: .

MathiasSimmack 4. Jan 2003 18:09

Lösung: den Browser, der für HTMLs zuständig ist, aus der Registry auslesen, und dann die URL übergeben!


Alle Zeitangaben in WEZ +1. Es ist jetzt 01:28 Uhr.
Seite 1 von 4  1 23     Letzte »    

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