Entwickler-Ecke

Internet / Netzwerk - Internetseite öffnen


Karon - Mo 11.09.06 16:31
Titel: Internetseite öffnen
Hallo!
Ich weiß es gibt schon ähnliche Threads, aber genau das is der Punkt, ähnliche..
Ich hab folgendes Problem, ich will aus einer txt Webadressen in ein Memo-Feld schreiben, das klappt, so.. dann soll bei Doppel-Klick auf einen Namen die Seite geöffnet werden, allerdings bekomm ich das nicht hin!
Hier mal den Code:


Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
procedure TForm1.ListBox1DblClick(Sender: TObject);
var
adresse : string[50];
begin
adresse:='http://www.'+listbox1.Items.Strings[Listbox1.ItemIndex];
ShellExecute(0,'open',adresse,NIL,NIL,SW_SHOWNORMAL);
end;


Die Funktion ShellExecute funktioniert so, wenn ich statt Adresse z.B. "PChar('http://...')" eingebe klappts, aber "adresse" is der falsche Datentyp, aber alles was ich versucht habe funktioniert nicht, könnt ihr mir bitte helfen?!
Danke!!!

Moderiert von user profile iconraziel: Code- durch Delphi-Tags ersetzt


ManniTwo - Mo 11.09.06 16:35

hi,


halt dir adresse als String und probiers mit


Delphi-Quelltext
1:
ShellExecute(0,'open',PChar(adresse),NIL,NIL,SW_SHOWNORMAL);                    

(ungetestet, aber müsste gehen)


Karon - Mo 11.09.06 21:56

Hi!
Danke für die schnelle Antwort, funktioniert aber nicht, hab ich schon probiert!
Fehler: Ungültige Typumwandlung

ich habe was von der Klasse TWebbrowser gehört, weiß einer evtl, wie ich das damit machen kann und was ich dabei alles beachten muss, falls es mit der ShellExecute nicht geht?!


Marc. - Mo 11.09.06 22:01


Delphi-Quelltext
1:
2:
3:
4:
procedure TForm1.ListBox1Click(Sender: TObject);
begin
 ShellExecute(0,'open',PChar(Listbox1.Items[Listbox1.ItemIndex]),NIL,NIL,SW_SHOWNORMAL);
end;

Funktioniert bei mir einwandfrei, wenn zb "www.delphi-forum.de" in der listbox steht ;)


Karon - Mo 11.09.06 22:07

Ahh ich habs!! lol


Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
procedure TForm1.ListBox1DblClick(Sender: TObject);
var
adresse : string[50];
begin
adresse:='http://www.'+listbox1.Items.Strings[Listbox1.ItemIndex];
showmessage(adresse);
ShellExecute(0,'open',PChar('http://www.'+listbox1.Items.Strings[Listbox1.ItemIndex]),NIL,NIL,SW_SHOWNORMAL);
end;


wenn ich die Adresse erst in der Klammer zusammenbau gehts, hab ja in der Listbox die Seiten ohne http://www. drin, weil ich nach dem Namen der Seite suche.. naja hät ich ja auch drauf kommen können..

Vielen Dank für die Hilfe!!!!!!!

MfG

Moderiert von user profile iconTino: Code- durch Delphi-Tags ersetzt


Marc. - Mo 11.09.06 22:14

hakst du den thread bitte noch als "erledigt" ab? Einmal oben im ersten Post auf den grünen Pfeil klicken, danke ;)


Sinspin - Mo 11.09.06 23:50

du hättest das ganze sicherlich auch noch übersichtlicher hinbekommen.
und zwar, indem du einfach statt string[50] einfach nur string verwendest.


Karon - Di 12.09.06 02:48

Jaa, aber ich lese ja beliebig lange und viele URLs aus ner txt aus, so ne url kann schon ziemlich lang sein.. ;-)
Aber is jetzt ja sowieso egal, da das mit der Variable ja nicht funktioniert hat!
Trotzdem Danke für die Tips!!
MfG