![]() |
TWebbrowser -> komisches Verhalten
Moin,
ich hoffe Ihr könnt mir helfen, ich stecke voll fest :pale: Ich habe einen Webbrowser in meinem Prog, den ich nicht über Navigate sondern über eine Stringlist mit der HTML Seite füttere. Die SL wird logischerweise zur Laufzeit gefüllt und dann bei Bedarf an den Browser geschickt. Das klappt auch alles soweit, nur wenn ich einen Link im HTML Code habe der wie folgt aussieht:
XML-Code:
wird er einfach beim Klick nicht ausgeführt. Es gibt zwar eine Hand, aber beim klicken passiert nichts. Mache ich das gleiche mit einem externen Link:
[url="C:\Daten\test.pdf"]Mein Link[/url]
XML-Code:
geht´s sofort und ohne Probleme.
[url="http://www.meineDomain.de/test.pdf"]Mein Link[/url]
Auch geht es mit dem lokalen Link wenn ich die Stringlist vorher auf die Platte schreibe und dann per Webbrowser.Navigate die Datei lese. Leider ist das keine Lösung da ich später mit der Anwendung auf einer CD bin und nichts lokal schreiben darf. Hat irgendjemand möglicherweise einen tollen Einfall :? viele Grüße Peter |
Re: TWebbrowser -> komisches Verhalten
probier mal
<a href="file:///c:/daten/usw" ...> |
Re: TWebbrowser -> komisches Verhalten
Hmm, leider klappt das auch nicht...
trotzdem danke :-) |
Re: TWebbrowser -> komisches Verhalten
Wie lädst du denn den Code direkt in den WebBrowser? Vielleicht kann man dir besser helfen, wenn du uns das verrätst! :wink:
|
Re: TWebbrowser -> komisches Verhalten
Jau,
Das ist die passende Funktion:
Delphi-Quellcode:
und so wird sie aufgerufen:
function ShowHtml(mWebBrowser: TWebBrowser; mStrings: TStrings): Boolean;
var vMemoryStream: TMemoryStream; begin Result := False; if not (Assigned(mStrings) and Assigned(mWebBrowser)) then Exit; mWebBrowser.Navigate(exepfad+'html\blank.html'); if not Assigned(mWebBrowser.Document) then Exit; vMemoryStream := TMemoryStream.Create; try mStrings.SaveToStream(vMemoryStream); try vMemoryStream.Position := 0; Application.ProcessMessages; (mWebBrowser.Document as IPersistStreamInit).Load( TStreamAdapter.Create(vMemoryStream)); except Exit; end; finally vMemoryStream.Free; end; Result := True; end;
Delphi-Quellcode:
Beantwortet das Deine Frage?
sl.Clear;
sl.Add('[url="file:///C:/Test/MeinPdf.pdf"]Mein Link[/url]'); // Allerhand in die Liste packen... ShowHtml(WebBrowser1,SL); // und die Funktion aufrufen danke für die Mühe Peter |
Re: TWebbrowser -> komisches Verhalten
Funktioniert es denn wenn du ne ganz normale Html seite öffnest
local oder im web? könnte mir vorstellen das es einfach daran liegt das es ne PDF ist? Dann wäre klar warum es funktioniert wenn du es mit target=_blank aufrufst, dann startet er nämlich nen stinknormalen I-net Explorer und der wiederrum kann pdf Files sofern Acrobat Reader installiert ist problemlos öffnen. mfg emploi |
Re: TWebbrowser -> komisches Verhalten
Ja, leider klappt es auch mit einem ganz normalen Link nicht. Es liegt auch nicht am pdf, denn
wenn ich die Seite erstmal auf der Platte zwischenspeicher, dann klappt es. Grüße Peter |
Alle Zeitangaben in WEZ +1. Es ist jetzt 03:52 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