Einzelnen Beitrag anzeigen

Peter Sawatzki

Registriert seit: 3. Sep 2006
3 Beiträge
 
#10

Re: über DDE eine PDF Datei im Acrobat Reader schließen

  Alt 17. Feb 2007, 12:43
Ich glaube, mit einem Trick kannst du doch das Dokument schliessen: öffne mit [DocOpen("%s")] doch das gleichnamige schon geöffnete Dokument und schliesse es wieder mit [DocClose("%s")]. Das hat bei mir funktioniert.

Ein Hinweise noch: du muss " für die Namensabgrenzung nehmen und nicht ' wie du es gemacht hast.

Peter

Zitat von Peter Sawatzki:
DocClose kann nur die mit DocOpen geöffneten Dokumente schliessen, niemals die von einem User geöffneten oder die von FileOpen(Ex) geöffneten Dokumente. Dies ist auch in der Acrobat 8 SDK Doku beschrieben.

Peter

----------------
Habe den Code-Schnipsel mal ausprobiert - der Acrobat Reader (7.0.9) weigert sich immer noch hartnäckig, das geöffnete, gleichnamige PDF zu schließen.

Delphi-Quellcode:
var
  DDEClientConv1 : TDDEClientConv;
  befehl : array[0..256] of char;
  fn: TFileName;

...
  try
    fn := 'AntragDVRDV.pdf';
    //befehl := Format('[DocClose(''%s'')]', [fn]);
    StrPCopy(befehl, Format('[DocClose(''%s'')]', [fn]));
    DDEClientConv1 := TDDEClientConv.Create(nil);
    DDEClientConv1.ExecuteMacro(befehl, True);
  finally
    DDEClientConv1.CloseLink;
    DDEClientConv1.Free;
  end;

Sieht eigentlich so aus, als müßte es funktionieren, aber irgendetwas passt noch nicht. Hat jemand eine zündende Idee?
  Mit Zitat antworten Zitat