Bonjour,

J'utilise l'API d'acrobat pour récupérer des information de mon document PDF.

Voici ma routine réduite au minimum mais qui me génère le problème suivant.

J'ouvre mon PDF, je fais une acquisition (sélection de la page PDF) puis
je ferme le PDF.

Hors après ma fermeture de mon fichier et à l'affichage de mon showmessage,
mon fichier PDF n'est pas libéré (Pour le tester j'essaye de le renommer.
Windows m'informe que le fichier est déjà ouvert dans Acrobat.

Mon code retour de la fonction close me renvoie pour tant -1 qui indique que la fermeture s'est bien passée.

Merci de votre aide.

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
 
Var
  acrobat_PDDoc: TAcroPDDoc;
 
Begin
 
       acrobat_PDDoc:=TAcroPDDoc.Create(nil);
 
       Rep_Exe:=ExtractFilePath(Application.ExeName);
 
       if Not(acrobat_PDDoc.Open(Rep_Exe+'Production\in\temp.pdf')) then
       begin
         messagedlg('Impossible d''ouvrir le fichier Temp.pdf', mtWarning, [mbOK], 0);
         Exit;
       end;
 
       PDPage := acrobat_PDDoc.AcquirePage(0);
 
 
       acrobat_PDDoc.Close;
       acrobat_PDDoc.Destroy;
 
       showmessage('Fini');
end;