AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

mit VBA PDF-Informationen auslesen

Ein Thema von FriFra · begonnen am 14. Nov 2007 · letzter Beitrag vom 18. Nov 2007
Antwort Antwort
Benutzerbild von FriFra
FriFra

Registriert seit: 19. Apr 2003
1.291 Beiträge
 
Delphi 2005 Professional
 
#1

mit VBA PDF-Informationen auslesen

  Alt 14. Nov 2007, 21:26
Hat jemand eine Idee, wie man mit VBA an die PDF-Infos (z.B. Created oder Modified) heran kommen kann?


P.S.: Das Erstellungsdatum der datei ist NICHT das pdf-Erstellungsdatum
Elektronische Bauelemente funktionieren mit Rauch. Kommt der Rauch raus, geht das Bauteil nicht mehr.
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer

Registriert seit: 13. Aug 2002
17.171 Beiträge
 
Delphi 10.4 Sydney
 
#2

Re: mit VBA PDF-Informationen auslesen

  Alt 14. Nov 2007, 21:36
Wenns der Explorer nicht über erweiterte Dateieigenschaften anbieten kann wirst du entweder die Acrobat Vollversion, Komponenten wie PDF-Toolkit benötigen oder du ziehst dir ein paar Wochen das PDF-Format rein und liest es selbst aus.
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
omata

Registriert seit: 26. Aug 2004
Ort: Nebel auf Amrum
3.154 Beiträge
 
Delphi 7 Enterprise
 
#3

Re: mit VBA PDF-Informationen auslesen

  Alt 14. Nov 2007, 21:54
Oder du schaust dir mal pdftk an...
  Mit Zitat antworten Zitat
Benutzerbild von FriFra
FriFra

Registriert seit: 19. Apr 2003
1.291 Beiträge
 
Delphi 2005 Professional
 
#4

Re: mit VBA PDF-Informationen auslesen

  Alt 16. Nov 2007, 10:46
Zitat von Bernhard Geyer:
Wenns der Explorer nicht über erweiterte Dateieigenschaften anbieten kann wirst du entweder die Acrobat Vollversion, Komponenten wie PDF-Toolkit benötigen oder du ziehst dir ein paar Wochen das PDF-Format rein und liest es selbst aus.
Der Explorer zeigt es auf einem extra Reiter "PDF" an... nur wie komme ich da dran?
Das ganze soll möglichst mit Bordmitteln (Acrobat Reader ist installiert) erfolgen.
Elektronische Bauelemente funktionieren mit Rauch. Kommt der Rauch raus, geht das Bauteil nicht mehr.
  Mit Zitat antworten Zitat
omata

Registriert seit: 26. Aug 2004
Ort: Nebel auf Amrum
3.154 Beiträge
 
Delphi 7 Enterprise
 
#5

Re: mit VBA PDF-Informationen auslesen

  Alt 16. Nov 2007, 19:46
Da du mich ja so erfolgreich ignoriert hast...
Code:
  Set objShell = CreateObject("WScript.Shell")
  Set objExec = objShell.Exec("c:\...\pdftk.exe c:\...\datei.pdf dump_data")
  strPingResults = LCase(objExec.StdOut.ReadAll)
  MsgBox (strPingResults)

störe ich eigentlich nur sehr ungern.

Aber vielleicht ist der Vorschlag mit pdftk zu einfach, immerhin muss dafür nichts installiert werden.
  Mit Zitat antworten Zitat
Benutzerbild von FriFra
FriFra

Registriert seit: 19. Apr 2003
1.291 Beiträge
 
Delphi 2005 Professional
 
#6

Re: mit VBA PDF-Informationen auslesen

  Alt 16. Nov 2007, 21:42
Zitat von omata:
Da du mich ja so erfolgreich ignoriert hast...
Ok, die Idee ist nicht schlecht, aber ichbrauche eben doch die pdftk.exe ... Für so etwas muss doch der Acrobat-Reader selbst auch gehen... der Explorer bekommt es doch auch ohne pdftk.exe hin
Elektronische Bauelemente funktionieren mit Rauch. Kommt der Rauch raus, geht das Bauteil nicht mehr.
  Mit Zitat antworten Zitat
hathor
(Gast)

n/a Beiträge
 
#7

Re: mit VBA PDF-Informationen auslesen

  Alt 16. Nov 2007, 23:42
Warum mit VBA?

Es geht auch mit Bordmittel ohne ACROBAT-Zeugs:

Delphi-Quellcode:
FUNCTION getcreationtime(SR : TsearchRec) : string;
begin result:= getfiletime(SR.finddata.ftCreationtime); end;

FUNCTION getcreationdate(SR : TsearchRec) : string;
begin result:= getfiledate(SR.finddata.ftCreationtime); end;

FUNCTION getlastaccessdate(SR : TsearchRec) : string;
begin result:= getfiledate(SR.finddata.ftCreationtime); end;

FUNCTION getlastaccesstime(SR : TsearchRec) : string;
begin result:= getfiletime(SR.finddata.ftCreationtime); end;

FUNCTION getLastWritedate(SR : TsearchRec) : string;
begin result:= getfiledate(SR.finddata.ftLastWriteTime); end;

FUNCTION getLastWritetime(SR : TsearchRec) : string;
begin result:= getfiletime(SR.finddata.ftLastWriteTime); end;
oder direkt aus dem File: Creationdate suchen - da steht Datum und Uhrzeit:
Delphi-Quellcode:
 Offset 0 1 2 3 4 5 6 7 8 9 A B C D E F 10 11 12 13 14 15 16 17 18 19 1A 1B 1C 1D 1E 1F

00000D20 3C 3C 2F 50 72 6F 64 75 63 65 72 28 41 46 50 4C 20 47 68 6F 73 74 73 63 72 69 70 74 20 38 2E 35
<</Producer(AFPL Ghostscript 8.5
00000D40 34 29 0A 2F 43 72 65 61 74 69 6F 6E 44 61 74 65 28 44 3A 32 30 30 37 31 31 31 37 30 30 31 35 32 4)./CreationDate(D:2007111700152
00000D60 33 29 0A 2F 4D 6F 64 44 61 74 65 28 44 3A 32 30 30 37 31 31 31 37 30 30 31 35 32 33 29 0A 2F 54 3)./ModDate(D:20071117001523)./T
00000D80 69 74 6C 65 28 54 45 53 54 74 68 29 0A 2F 43 72 65 61 74 6F 72 28 46 72 65 65 50 44 46 20 58 50 itle(TESTth)./Creator(FreePDF XP
00000DA0 20 33 2E 32 34 20 2D 20 68 74 74 70 3A 2F 2F 73 68 62 6F 78 2E 64 65 29 0A 2F 41 75 74 68 6F 72
3.24 - [url]http://shbox.de[/url])./Author
00000DC0 28 48 41 54 48 4F 52 29 3E 3E 65 6E 64 6F 62 6A 0A 78 72 65 66 0A 30 20 31 34 0A 30 30 30 30 30 (HATHOR)>>endobj.xref.0 14.00000
00000DE0 30 30 30 30 30 20 36 35 35 33 35 20 66 20 0A 30 30 30 30 30 30 30 35 31 39 20 30 30 30 30 30 20
00000 65535 f .0000000519 00000
00000E00 6E 20 0A 30 30 30 30 30 30 33 33 35 32 20 30 30 30 30 30 20 6E 20 0A 30 30 30 30 30 30 30 34 35
n .0000003352 00000 n .000000045
00000E20 31 20 30 30 30 30 30 20 6E 20 0A 30 30 30 30 30 30 30 32 39 31 20 30 30 30 30 30 20 6E 20 0A 30
1 00000 n .0000000291 00000 n .0
00000E40 30 30 30 30 30 30 30 31 35 20 30 30 30 30 30 20 6E 20 0A 30 30 30 30 30 30 30 32 37 32 20 30 30
000000015 00000 n .0000000272 00
00000E60 30 30 30 20 6E 20 0A 30 30 30 30 30 30 30 35 36 37 20 30 30 30 30 30 20 6E 20 0A 30 30 30 30 30
000 n .0000000567 00000 n .00000
00000E80 30 30 36 36 38 20 30 30 30 30 30 20 6E 20 0A 30 30 30 30 30 30 30 39 37 34 20 30 30 30 30 30 20
00668 00000 n .0000000974 00000
00000EA0 6E 20 0A 30 30 30 30 30 30 30 36 30 38 20 30 30 30 30 30 20 6E 20 0A 30 30 30 30 30 30 30 36 33
n .0000000608 00000 n .000000063
00000EC0 38 20 30 30 30 30 30 20 6E 20 0A 30 30 30 30 30 30 31 31 37 37 20 30 30 30 30 30 20 6E 20 0A 30
8 00000 n .0000001177 00000 n .0
00000EE0 30 30 30 30 30 30 38 36 31 20 30 30 30 30 30 20 6E 20 0A 74 72 61 69 6C 65 72 0A 3C 3C 20 2F 53
000000861 00000 n .trailer.<< /S
00000F00 69 7A 65 20 31 34 20 2F 52 6F 6F 74 20 31 20 30 20 52 20 2F 49 6E 66 6F 20 32 20 30 20 52 0A 2F
ize 14 /Root 1 0 R /Info 2 0 R./
00000F20 49 44 20 5B 3C 34 44 44 33 30 34 34 35 33 34 33 32 37 42 45 34 45 31 37 35 36 32 37 43 33 32 46
ID [<4DD3044534327BE4E175627C32F
00000F40 35 38 31 35 30 3E 3C 34 44 44 33 30 34 34 35 33 34 33 32 37 42 45 34 45 31 37 35 36 32 37 43 33 58150><4DD3044534327BE4E175627C3
00000F60 32 46 35 38 31 35 30 3E 5D 0A 3E 3E 0A 73 74 61 72 74 78 72 65 66 0A 33 35 33 37 0A 25 25 45 4F 2F58150>].>>.startxref.3537.%%EO
00000F80 46 0A F.
  Mit Zitat antworten Zitat
Benutzerbild von FriFra
FriFra

Registriert seit: 19. Apr 2003
1.291 Beiträge
 
Delphi 2005 Professional
 
#8

Re: mit VBA PDF-Informationen auslesen

  Alt 18. Nov 2007, 22:39
Zitat von hathor:
Warum mit VBA?
Weil es sich eben nicht überall vermeiden lässt

Also getcreationtime, liefert auf keinen Fall das Erstellungsdatum des PDF, bestenfalls das Downloaddatum

Der Tip mit dem ModDate ist gut... den werde ich jetzt mal weiter verfolgen
Elektronische Bauelemente funktionieren mit Rauch. Kommt der Rauch raus, geht das Bauteil nicht mehr.
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 03:12 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz