title image


Smiley Das Installationsdatum müßte doch eigentlich das Erstelldatum der exe sein?
Hallo Harry,



die VB-Funktion FileDateTime liefert das Datum der letzen Änderung, aber ich glaube, du willst was

anderes. Das Installationsdatum müßte doch eigentlich das Erstelldatum der exe sein, oder???

(weil doch das Erstelldatum das Datum ist, an dem die Datei auf dem Rechner erstellt wurde und nicht

das, wann die exe gebaut wurde - das ist ja das Datum der letzen Änderung)





in der WinAPI gibts:

den Struct: WIN32_FIND_DATA da steht ziemlich alles drin, was im Eigenschaftsfenster des

Explorers angezeigt wird und die Funktion FindFirstFile, die diesen Struct befüllt und zurückliefert,

außerdem noch die Funktion FileTimeToSystemTime, die die Datumsangaben des Struct's

WIN32_FIND_DATA auswertet.





Ich weiß ja, daß du da noch nicht fit bist, deshalb ein kurzes Bsp:



Option Explicit



Private Type FILETIME

dwLowDateTime As Long

dwHighDateTime As Long

End Type



Private Type WIN32_FIND_DATA

dwFileAttributes As Long

ftCreationTime As FILETIME

ftLastAccessTime As FILETIME

ftLastWriteTime As FILETIME

nFileSizeHigh As Long

nFileSizeLow As Long

dwReserved0 As Long

dwReserved1 As Long

cFileName As String * MAX_PATH

cAlternate As String * 14

End Type



Private 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



Private Declare Function FindFirstFile Lib "kernel32" Alias "FindFirstFileA" (ByVal lpFileName As String, lpFindFileData As WIN32_FIND_DATA) As Long

Private Declare Function FileTimeToSystemTime Lib "kernel32" (lpFileTime As FILETIME, lpSystemTime As SYSTEMTIME) As Long





Private Sub PrintFileInfos(ByVal PathAndFile As String)

Dim tFindData As WIN32_FIND_DATA

Dim tErg As SYSTEMTIME



FindFirstFile PathAndFile, tFindData

FileTimeToSystemTime tFindData.ftCreationTime, tErg



Debug.Print tErg.wDay

Debug.Print tErg.wMonth

Debug.Print tErg.wYear

Debug.Print tErg.wHour

Debug.Print tErg.wMinute

Debug.Print tErg.wSecond

Debug.Print tErg.wMilliseconds

Debug.Print tErg.wDayOfWeek



End Sub





Die Sub PrintFileInfos will den kompletten Pfad zur Datei (incl Laufwerk) und schreibt das Erstelldatum ins Debugfenster

(Ansicht->Direktfenster oder [Ctrl]+[G])



Diese Sub so umzubauen, daß sie die Daten, die dich interessieren, so liefert wie du sie brauchst, müßtest du eigentlich

selbst schaffen.



In den Type-Deklarationen steht ja, drin, welche Infos zur Verfügung stehen (im Prinzip ziemlich alles, das im Explorer unter

Datei->Eigenschaften angezeigt wird). Und die Bezeichnungen in den Type-Deklarationen sagen ja eigentlich, was wo steht.



Anm: Ich glaube, das mit Sommerzeit und Winterzeit stimmt nicht (wHour kann also um eine Stunde falsch sein)



Gruß

Gaga



PS: Wenn dich die installierte Version einer Componente interessiert, ist das Installationsdatum keine gute Lösung,

ich kann mir zB jetzt VB 1 installieren (wenn ich's hätte). Installationsdatum ist eben heute, aber die Version ist

praktisch von vorvorgestern.


Gruß
Gaga

___________________________________________________________________

Profilösungen für VB6
wenn nicht anders angegeben, sind alle Codebeispiele nicht getestet, nur getippt


geschrieben von

Login

E-Mail:
  

Passwort:
  

Beitrag anfügen

Symbol:
 
 
 
 
 
 
 
 
 
 
 
 
 

Überschrift: