![]() |
PDF in TWebBrowser - Absturz beim Schliessen der Form
Hallo,
eine PDF-Datei in einem TWebBrowser anzuzeigen ist an sich ganz einfach. Ich habe leider damit ein Problem. Wenn ich nach der Anzeige die Form (das Programm) schliesse, dann bekomme ich die Meldung: "Project ... faulted with message: 'system exception (code 0xe06d7363) at 0x76e3b727'" Hat jemand eine Idee was ist hier falsch? Gruß marcos Meine Umgebung: Delphi 2010; Win7/64 Testprogramm:
Delphi-Quellcode:
unit Unit1;
interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, OleCtrls, SHDocVw, StdCtrls; type TForm1 = class(TForm) pbOpenFile: TButton; pbCloseFile: TButton; WebBrowser1: TWebBrowser; procedure pbCloseFileClick(Sender: TObject); procedure pbOpenFileClick(Sender: TObject); private { Private declarations } public { Public declarations } end; var Form1: TForm1; implementation {$R *.dfm} procedure TForm1.pbCloseFileClick(Sender: TObject); begin WebBrowser1.Navigate('about:blank'); end; procedure TForm1.pbOpenFileClick(Sender: TObject); begin WebBrowser1.Navigate('file:///' +'c:\temp\myTest.pdf'); end; end. |
AW: PDF in TWebBrowser - Absturz beim Schliessen der Form
Zitat:
|
AW: PDF in TWebBrowser - Absturz beim Schliessen der Form
Acrobat 9.3.4 - "keine neue Updates verfügbar".
marcos |
AW: PDF in TWebBrowser - Absturz beim Schliessen der Form
So dunkel kann ich mich erinnern, daß ich das auch mal gehabt hab: ich glaub, Du mußt vor dem Beenden zu 'about:blank' navigieren, so daß sich das Reader Plugin entladen kann.
Grüße, Uli |
AW: PDF in TWebBrowser - Absturz beim Schliessen der Form
@Uli: er navigiert ja schon auf "about:blank"
Das alleine hilft aber nicht. Es gibt einen Fehler im Acrobat, der Adobe schon lange bekannt ist und der beim Beenden manchmal eine Zugriffsverletzung verursacht. Um das zu vermeiden sollte man zuerst auf "about:blank" gehen und auch wirklich warten bis diese Seite komplett geladen ist. Danach CoFreeUnusedLibraries aufrufen. |
AW: PDF in TWebBrowser - Absturz beim Schliessen der Form
@Daniela: nur wenn der TE den Button drückt :wink:
Daß der Fehler Adobe bekannt ist, wußte ich nicht. Danke für den Tip mit CoFreeUnusedLibraries. Werd ich demnächst mal einbauen und ausprobieren. Grüße, Uli |
AW: PDF in TWebBrowser - Absturz beim Schliessen der Form
Evtl. den Browser noch freigeben beim Beenden.
Delphi-Quellcode:
procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);
begin Hide; WebBrowser1.Navigate('about:blank'); while WebBrowser1.Busy do Application.ProcessMessages; WebBrowser1.Free; CoFreeUnusedLibraries; // Unit ActiveX end; |
AW: PDF in TWebBrowser - Absturz beim Schliessen der Form
Daniela,
"ten points" :), damit funktioniert, danke. Gruß marcos |
Alle Zeitangaben in WEZ +1. Es ist jetzt 18:30 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