So, ich habe jetzt eine Lösung - in Verbindung mit einem TWebBrowser - gefunden. Beim Erstellen des Programms wird abgetestet, ob der Acrobat Reader 7 installiert ist ...
Delphi-Quellcode:
try
PdfFenster:= TAcroPDF.Create(Self);
PdfFenster.Parent:= PanelPdf;
PdfFenster.LoadFile('\pdf\Lektion_1_1.pdf');
PdfOK:= true;
// Acrobat 7 Reader ist installiert -> einstellen
with PdfFenster do
begin
Height:= 365;
Left:= 12;
Top:= 30;
Width:= 560;
end;
except
PdfOK:= false;
// Acrobat 7 Reader ist nicht installiert
PdfFenster.Free;
end;
... später, wenn eine Pdf-Datei angezeigt werden soll, wird diese dementsprechend geladen.
Delphi-Quellcode:
if PdfOK then
begin // Ausgabe mit Acrobat Reader
PdfFenster.Visible:= true;
PdfFenster.LoadFile(s);
PdfFenster.setShowToolbar(false);
PdfFenster.setZoomScroll(105,50,50);
end else
begin // Ausgabe über Webbrowser
GetDir(0,sdir);
MainForm.PdfWebBrowser.Visible:= true;
MainForm.PdfWebBrowser.Navigate(sdir+'\'+s);
end;
Dies funktioniert ansich ganz gut - ich habe es auf mehreren Rechnern mit unterschiedlichen Acrobat-Versionen getestet. Allerdings wurde auf einem Rechner, auf dem der Acrobat Reader 7.0 installiert ist die Pdf-Datei trotzdem über den Browser geladen? Gibt es auch unterschiedliche TAcroPdf-Versionen? Woran kann dies noch liegen?