Tja, ich arbeite dran.
Der Haken bisher ist, dass ich eine EOleSysError-
Exception mit der Meldung 'Klasse nicht registriert' bekomme. Ich nutze den Adobe Reader 8.
Und ich arbeite über
OLE, wenns für dich in Ordnung ist. Denn mit
DDE kenn ich mich nicht aus...
Aber vielleicht hilft dir mein Code ja schon weiter:
Delphi-Quellcode:
uses
Acrobat_TLB;
// von Delphi generiert
...
var
AcroApp: TAcroApp;
I, OpenedDocs: Integer;
begin
AcroApp := TAcroApp.Create(self);
AcroApp.ConnectKind := ckRunningInstance;
// Wenn kein Adobe Reader offen ist, hat sich die Sache erledigt
AcroApp.Connect;
// Hier kommt blöderweise meine Exception
OpenedDocs := AcroApp.GetNumAVDocs;
// Das gibt einem (hoffentlich) die Anzahl der Dokumente
for I := 0
to OpenedDocs -1
do
begin
// Hier nur mehr ein wenig Pseudo-Code...
if TAcroAVDoc(AcroApp.GetAVDoc(I)).GetTitle = '
DeinDateiName.pdf'
then
// Mit Close dann schließen...
end;
// Hier muss man natürlich noch zusammenräumen...
end;
Vielleicht hilft es ja was...
Ich versuchs derweil noch hinzubekommen.
mfg,
Andreas
Andreas N.