![]() |
Anzeige:
|
|
|||||||
| XProfan Alles rund um die Programmiersprache XProfan. |
|
![]() |
|
|
LinkBack | Themen-Optionen | Ansicht |
|
|
#1 (Direktlink) |
|
Erfolgreich angemeldet
![]() Registriert seit: 23.02.2011
Beiträge: 6
|
Hi,
Kann mann irgendwie herausfinden mit Xprofan11, wann ein File letztes mal modifiziert wurde? (z.B mit @LoadFile einlesen, und das Datum als String haben) Ich habe folgende api dazu gefunden, aber hat nix gebracht Def GetFileTime(4) ! "kernel32","GetFileTime" Def FileTimeToLocalFileTime(2) ! "kernel32","FileTimeToLocalFileTime" Def FileTimeToSystemTime(2) ! "kernel32","FileTimeToSystemTime" Def SetFileTime(4) ! "kernel32","SetFileTime" Def GetSystemTimeAsFileTime(1) ! "kernel32","GetSystemTimeAsFileTime" Def SystemTimeToFileTime(2) ! "kernel32","SystemTimeToFileTime" Def LocalFileTimeToFileTime(2) ! "kernel32","LocalFileTimeToFileTime" Gruß |
|
|
|
|
|
|
#2 (Direktlink) |
|
Forenmaskottchen
![]() Registriert seit: 16.05.2010
Ort: Berlin
Beiträge: 724
|
Code:
__________________
Gruß Thomas Wenn mir früher jemand gesagt hätte, ich würde freiwillig eine Wanze mit mir herum tragen und sie auch noch selbst aufladen, hätte ich laut gelacht. Heute habe ich ein Smartphone. http://realsource.de |
|
|
|
|
|
#3 (Direktlink) |
|
Weiß worum´s geht
![]() Registriert seit: 15.02.2011
Beiträge: 106
|
Profan zeigt leider nur das Erstellungsdatum an.
Hiermit bekommst Du das Datum der letzten Änderung: Code:
$H windows.ph
Def Desktop(0) ReadIni$("Hkey_1","Software\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders","DeskTop")
Declare LPFILETIME#,File$,lpLocalFileTime#,SYSTEMTIME#
Dim LPFILETIME#,8
Dim lpLocalFileTime#,8
Struct SYSTEMTIME = wYear%,wMonth%,wDayOfWeek%,wDay%,wHour%,wMinute%,wSecond%,wMilliseconds%
Dim SYSTEMTIME#,SYSTEMTIME
File$ = Desktop() + "\\Filetest.txt"
Print File$
Var hdl& =~CreateFile(Addr(File$),~GENERIC_READ,0,0,~OPEN_EXISTING,0,0)
Print hdl&
~GetFileTime(hdl&,0,0,LPFILETIME#)
~CloseHandle(hdl&)
Print ~FileTimeToLocalFileTime(LPFILETIME#,lpLocalFileTime#)
~FileTimeToSystemTime(lpLocalFileTime#,SYSTEMTIME#)
Print ""
Set("NumWidth",7)
Print ""
Print " wYear%,wMonth%,wDayOfWeek%,wDay%,wHour%,wMinute%,wSecond%,wMilliseconds%"
With SYSTEMTIME#
Print .wYear%,.wMonth%,.wDayOfWeek%,.wDay%,.wHour%,.wMinute%,.wSecond%,.wMilliseconds%
EndWith
Dispose LPFILETIME#,lpLocalFileTime#,SYSTEMTIME#
WaitInput
End
__________________
Anhören lohnt sich wuestensand.info Geändert von _Joerg_ (14.10.2011 um 02:47 Uhr) |
|
|
|
|
|
#4 (Direktlink) |
|
Gast
Beiträge: n/a
|
so hast du alles gleich im richtigen Format
Code:
DEF GetFileAttributesEx(3) ! "Kernel32","GetFileAttributesExA"
DEF FileTimeToLocalFileTime(2) !"Kernel32","FileTimeToLocalFileTime"
DEF FileTimeToSystemTime(2) !"Kernel32","FileTimeToSystemTime"
Proc Getweekday
Parameters day&
Return substr$("Sonntag,Montag,Dienstag,Mittwoch,Donnerstag,Freitag,Samstag",day& + 1,",")
endproc
proc GetAttribString
parameters attrib&
return if(testbit(attrib&,4),"<DIR> ","") \
+ if(testbit(attrib&,0),"r","-") \
+ if(testbit(attrib&,5),"a","-") \
+ if(testbit(attrib&,1),"h","-") \
+ if(testbit(attrib&,2),"s","-")
endproc
proc GetAttribute
parameters File$
Declare info#,file#,utc#,time#,Attrib&,size!,cwrite$,ctime$,awrite$,atime$,wwrite$,wtime$,size$,Attrib$
Declare cday$,aday$,wday$,return$
dim info#,36
dim file#, len(file$)+1
String file#,0 = file$
DIM utc#,8
DIM time#,16
GetFileAttributesEx(file#,0,info#)
Attrib& = long(info#,0) 'Attribut
Attrib$ = GetAttribString(attrib&)
size! = (long(info#,28) * 65536 * 65536) + long(info#,32) 'Filesize
Size$ = Format$("###,###,###,###,###.00",size!)
return$ = size$+"|"+attrib$
'-------------------------Erstellzeit
FileTimeToLocalFileTime(info#+4,utc#)
FileTimeToSystemTime(utc#,time#)
cwrite$=""
ctime$=""
if word(time#,0) >= 1601
cday$ = Getweekday(word(time#,4))
return$ = return$+"|"+cday$+"|"
cwrite$=Format$("00",word(time#,6))+"."+Format$("00",word(time#,2))+"."+Format$("00",word(time#,0)) 'Last written date
ctime$=Format$("00",word(time#,8))+":"+Format$("00",word(time#,10))+":"+Format$("00",word(time#,12)) 'last written time
else
cwrite$="00.00.00"
ctime$="00:00:00"
endif
return$ = return$+cwrite$+"|"+ctime$+"|"
'-----------------------------letzter Zugriff
FileTimeToLocalFileTime(info#+12,utc#)
FileTimeToSystemTime(utc#,time#)
awrite$=""
atime$=""
if word(time#,0) >= 1601
aday$ = Getweekday(word(time#,4))
return$ = return$+aday$+"|"
awrite$=Format$("00",word(time#,6))+"."+Format$("00",word(time#,2))+"."+Format$("00",word(time#,0)) 'Last written date
atime$=Format$("00",word(time#,8))+":"+Format$("00",word(time#,10))+":"+Format$("00",word(time#,12)) 'last written time
else
awrite$="00.00.00"
atime$="00:00:00"
endif
return$ = return$+awrite$+"|"+atime$+"|"
'--------------------------- Zuletzt geschrieben
FileTimeToLocalFileTime(info#+20,utc#)
FileTimeToSystemTime(utc#,time#)
wwrite$=""
wtime$=""
if word(time#,0) >= 1601
wday$ = Getweekday(word(time#,4))
return$ = return$+wday$+"|"
wwrite$=Format$("00",word(time#,6))+"."+Format$("00",word(time#,2))+"."+Format$("00",word(time#,0)) 'Last written date
wtime$=Format$("00",word(time#,8))+":"+Format$("00",word(time#,10))+":"+Format$("00",word(time#,12)) 'last written time
else
wwrite$="00.00.00"
wtime$="00:00:00"
endif
return$ = return$+wwrite$+"|"+wtime$
Dispose info#
Dispose file#
Dispose UTC#
Dispose time#
return return$
endproc
cls
Var t$ = GetAttribute("C:\Autoexec.bat") 'Hier Dateipfad
'print t$
print "Filesize:",subStr$(t$,1,"|")
print "Attribut:",subStr$(t$,2,"|")
Print "----------------------"
print "Erstelltag:",subStr$(t$,3,"|")
print "Erstelldatum:",subStr$(t$,4,"|")
print "Erstellzeit:",subStr$(t$,5,"|")
Print "----------------------"
print "Letzter Zugriff Tag:",subStr$(t$,6,"|")
print "Letzter Zugriff Datum:",subStr$(t$,7,"|")
print "Letzter Zugriff Zeit:",subStr$(t$,8,"|")
Print "----------------------"
print "Zuletzt geschrieben Tag:",subStr$(t$,9,"|")
print "Zuletzt geschrieben Datum:",subStr$(t$,10,"|")
print "Zuletzt geschrieben Zeit:",subStr$(t$,11,"|")
waitinput
|
|
|
|
#5 (Direktlink) |
|
Erfolgreich angemeldet
![]() Registriert seit: 23.02.2011
Beiträge: 6
|
Danke an alle, das Erstellungsdatum reicht für mich.
code ist sogar im Hilfe, wieso habe ich nicht gefunden... Danke fürs Hilfe ! |
|
|
|
|
|
|
#6 (Direktlink) | |
|
Super-Moderator
![]() Registriert seit: 05.02.2009
Ort: Westliches NRW
Alter: 44
Beiträge: 5.094
|
Zitat:
__________________
Gruß, Frank ![]() Webpage http://frabbing.bplaced.net mit Freeware - Tools, Spiele und Grafiken. |
|
|
|
|
![]() |
|
| Lesezeichen |
| Themen-Optionen | |
| Ansicht | |
|
|
Ähnliche Themen
|
||||
| Thema | Autor | Forum | Antworten | Letzter Beitrag |
| Zeitstempel deaktivieren | Paule | d.) Windows 7 | 0 | 28.05.2011 17:40 |
| Datum und Zeitstempel aktivieren bei XP | p-pc | Windows XP | 2 | 15.09.2006 05:49 |
| Cannot play back the file. Unknown file type. | Johan | Allgemein | 4 | 15.03.2006 16:42 |
| PDF File in Word File umwandeln | boy0302 | Software - Allgemein | 1 | 21.05.2004 20:41 |