homer99
Goto Top

URL übergeben

Hallo,

ich möchte gerne mittels Datenfeld eine URL übergeben.

Damit funktioniert es tadellos:
ShellExecute(Application.Handle,'Open',Pchar(Edit6.text),nil,nil,sw_ShowNormal);

Wenn ich jetzt in der Datenbank die nächste URL anklicke, wird diese im schon vorhandenen Fenster geöffnet.
Mir wäre es aber lieber, wenn das alte Browserfenster offen bleibt und bei der nächsten URL wieder ein eigenes Fenster geöffnet, u.s.w wird. Damit mehrere verschiedene URL gleizeitig offen sind.

Im HTML-Bereich kann ich das mittels "TARGET=_blank" erreichen.

Wie mache ich das aus einem Programm heraus?

Content-ID: 34455

Url: https://administrator.de/contentid/34455

Ausgedruckt am: 22.11.2024 um 15:11 Uhr

11078
11078 19.06.2006 um 18:44:50 Uhr
Goto Top
Hallo,

Du sprichst ganz sicher bei beiden Aufrufen den gleichen "Handle" an.

Probier mal:

ShellExecute(Application.Handle1,'Open',Pchar(Edit6.text),nil,nil,sw_ShowNormal);
ShellExecute(Application.Handle2,'Open',Pchar(Edit6.text),nil,nil,sw_ShowNormal);


Gruß,
Tim
Homer99
Homer99 20.06.2006 um 09:44:33 Uhr
Goto Top
Hallo,

funktioniert leider nicht. Bekomme die Fehlermeldungen:
Undefinierter Bezeichner'Handle1'
Undefinierter Bezeichner'HAndle2'
11078
11078 20.06.2006 um 10:43:26 Uhr
Goto Top
Hallo,

nein sorry, das funktioniert wirklich nicht. Meine Idee war, über ein anderes Window Handle das Öffnen in einem neuen Fenster zu erzwingen. Das geht aber so einfach anscheinend nicht und auch nur bei schon offenen Fenster...


Das Problem ist die Methode, wie Du die URLs aufrufst, nämlich einfach über die WinAPI. Da wird die URL ja einfach in dem als Standardbrowser registrierten Browser geöffnet - und es wird natürlich auch die Browserinstanz genommen, die schon auf ist.

Du könntest mal testen, ob es ein anderes Ergebnis bringt, wenn Du einen Browser gezielt mit Pfad aufrufst. Eventuell gibt es noch Kommandozeilenparameter des jeweiligen Browsers, die ein Öffnen in einem neuen Fenster erzwingen.


Gruß,
Tim