Autor Thema: Erstellungsdatum eines eingebetteten Objektes  (Gelesen 2330 mal)

Offline Joker

  • Aktives Mitglied
  • ***
  • Beiträge: 109
  • Geschlecht: Männlich
  • Let`s start !!
Erstellungsdatum eines eingebetteten Objektes
« am: 01.09.03 - 14:06:17 »
Hi,
gibt es irgendeine Möglichkeit von einem eingebetteten Object (ist eine PDF-Datei), das Erstellungsdatum zu ermitteln. In Windows ist dieses in den Eigenschaften ja auch vorhanden.

Gruss
Martin


Offline ata

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 5.092
  • Geschlecht: Männlich
  • drenaiondrufflos
    • Anton Tauscher Privat
Re:Erstellungsdatum eines eingebetteten Objektes
« Antwort #1 am: 01.09.03 - 19:05:11 »
... da fällt mir nur die Win-Api ein, damit dürfte es gehen - vielleicht weiß einer der API-Spezialisten da mehr...

ata
Grüßle Toni :)

Offline eknori

  • @Notes Preisträger
  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 11.728
  • Geschlecht: Männlich
Re:Erstellungsdatum eines eingebetteten Objektes
« Antwort #2 am: 01.09.03 - 19:07:30 »
... ja, mit win-api geht das; aber nicht ohne ein temporäres detach
Egal wie tief man die Messlatte für den menschlichen Verstand auch ansetzt: jeden Tag kommt jemand und marschiert erhobenen Hauptes drunter her!

Offline eknori

  • @Notes Preisträger
  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 11.728
  • Geschlecht: Männlich
Re:Erstellungsdatum eines eingebetteten Objektes
« Antwort #3 am: 01.09.03 - 19:12:55 »
hier die notwendige ScriptClass

Const INVALID_HANDLE_VALUE = -1
Const MAX_PATH = 260

Type FILETIME
   dwLowDateTime As Long
   dwHighDateTime As Long
End Type

Type WIN32_FIND_DATA
   dwFileAttributes As Long ' Dateiattribute
   ftCreationTime As FILETIME ' Erstellungsdatum
   ftLastAccessTime As FILETIME ' Letzter Zugriff
   ftLastWriteTime As FILETIME ' Letzte Speicherung
   nFileSizeHigh As Long ' Größe (Hi)
   nFileSizeLow As Long ' Größe (Lo)
   dwReserved0 As Long ' bedeutungslos
   dwReserved1 As Long ' bedeutungslos
   cFileName As String * MAX_PATH ' Dateiname
   cAlternate As String * 14 ' 8.3-Dateiname
End Type

Type SYSTEMTIME
   wYear As Integer
   wMonth As Integer
   wDayOfWeek As Integer
   wDay As Integer
   wHour As Integer
   wMinute As Integer
   wSecond As Integer
   wMilliseconds As Integer
End Type


Declare Function FileTimeToLocalFileTime Lib "kernel32" (lpFileTime As FILETIME, lpLocalFileTime As FILETIME) As Long
Declare Function FindFirstFile Lib "kernel32" Alias "FindFirstFileA" (Byval lpFileName As String, lpFindFileData As WIN32_FIND_DATA) As Long
Declare Function FindNextFile Lib "kernel32" Alias "FindNextFileA" (Byval hFindFile As Long, lpFindFileData As WIN32_FIND_DATA) As Long
Declare Function FindClose Lib "kernel32" (Byval hFindFile As Long) As Long
Declare Function FileTimeToSystemTime Lib "kernel32" (lpFileTime As FILETIME, lpSystemTime As SYSTEMTIME) As Long
Declare Function SystemTimeToFileTime Lib "kernel32" (lpSystemTime As SYSTEMTIME, lpFileTime As FILETIME) As Long

Class FileInfo
   
   Public Function GetFileTimeInfo ( strPath As String , MODE As Integer ) As String
      
      Dim FileHandle As Long
      Dim FileData As WIN32_FIND_DATA
      Dim LocalFileTime As FILETIME
      Dim LocalSystemTime As SYSTEMTIME
      
      FileHandle = FindFirstFile(strPath & vbNullChar, FileData)
      Select Case MODE
         
      Case 0
         FileTimeToLocalFileTime FileData.ftLastAccessTime, LocalFileTime              
      Case 1
         FileTimeToLocalFileTime FileData.ftLastWriteTime, LocalFileTime              
      Case 2
         FileTimeToLocalFileTime FileData.ftCreationTime, LocalFileTime              
         
      End Select
      
      FileTimeToSystemTime LocalFileTime, LocalSystemTime
      
      GetFileTimeInfo = _
      Left$(FileData.cFileName, Instr(FileData.cFileName, vbNullChar) - 1)  _
      & LocalSystemTime.wDay & "." _
      & LocalSystemTime.wMonth & "." _
      & LocalSystemTime.wYear & ", "_
      & LocalSystemTime.wHour & ":" _
      & Format$(LocalSystemTime.wMinute, "00") _
      & ":" & Format$(LocalSystemTime.wSecond, "00") & " Uhr"
      
      FindClose FileHandle
      
   End Function
   
   Public Function GetFileInfo ( strPath As String , MODE As Integer ) As String
      
      Dim FileHandle As Long
      Dim FileData As WIN32_FIND_DATA
      
      FileHandle = FindFirstFile ( strPath  & vbNullChar , FileData )
      
      If FileHandle <> INVALID_HANDLE_VALUE Then
         
         Select Case MODE
            
         Case 3
            GetFileInfo = FileData.cFileName
         Case 4
            GetFileInfo = Cstr(FileData.nFileSizeLow)
         Case 5
            GetFileInfo = FileData.cFileName
         Case 6
            GetFileInfo = Cstr(FileData.dwFileAttributes)
         Case 7
            GetFileInfo = Cstr(FileData.cAlternate)
            
         End Select
      End If
      FindClose FileHandle
      
   End Function
   
End Class

Mit MODE = 2 kommst du an das Erstelldatum
Egal wie tief man die Messlatte für den menschlichen Verstand auch ansetzt: jeden Tag kommt jemand und marschiert erhobenen Hauptes drunter her!

Offline Joker

  • Aktives Mitglied
  • ***
  • Beiträge: 109
  • Geschlecht: Männlich
  • Let`s start !!
Re:Erstellungsdatum eines eingebetteten Objektes
« Antwort #4 am: 02.09.03 - 08:46:21 »
Danke,

klappt einwandfrei. ;D

Gruss
Martin

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz