CFile::GetStatus Problem
-
Hallo,
habe folgendes Problem mit einer Datei die ich _einlesen_ will.. wenn ich mir die Eigenschaften angucke, dann steht bei Geändert am -> "Dienstag, 21. Oktober 2098, 00:00:00" .. abstürzen tut es in der Zeile:
CFileStatus status; CFile::GetStatus("datei.bla",status); // <- hier
kann ich vorher irgendwie prüfen ob die Datei ein gültiges Datum hat, damit sowas nicht passiert? Die Datei wird beim einlesen nicht benutzt oder ähnliches.
danke im voraus!
-
CFileStatus status; if( CFile::GetStatus( "test.dat", status ) ) // static function { CString str; str.Format("Pfad = %s\nSize = %d\nDatum: %2d:%2d:%4d",status.m_szFullName ,status.m_size ,status.m_atime.GetDay() ,status.m_atime.GetMonth() ,status.m_atime.GetYear()); MessageBox(str); }
Das funktioniert.
-
ich habe das eben ausprobiert..
Debug Assertion Failed!
Program: ..
File: timecore.cpp
Line: 40..
funktioniert auch nicht
-
Geht´s sowiso nicht oder nur mit deiner Datei.
Sonst erstelle eine neue Datei und teste das Ding damit.Ich habs grad vorher ausprobiert und bei mir geht´s.
-
es geht mit dieser einen Datei nicht.. ich habe keine Ahnung wieso. Ich kann Sie Dir per Email schicken, falls du möchtest.
Vielleicht liegt es auch am Dateinamen: 1941 Counter Attack (SGX) (J) (non-SGX) [a1][h1].sgx
wobei das eigentlich kein Problem sein sollte.
-
schick mal
gelöscht @hotmail.com
Der Dateiname is sicher nicht schuld (hab i grad ausprobiert)
schreibs her wenn i Post bekommen hob
-
müsste da sein
-
Ich kann die Datei nicht entpacken! Der WinAce Archiever könnte schon, aber es kommt immer der Fehler: "CRC-Fehler. Die Datei ... konnte nicht fehlerfrei entpackt werden!"
kannst mir die unkomprimierte Datei schicken?
Geht´s bei dir zum entpacken?
-
hab sie nochmal unkomprimiert rausgeschickt.
ps: also ich bekomme es entpackt..ich benutze winrar.hab sie nochmal als zip weggeschickt.. ich bekomm sonst von hotmail eine Fehlermeldung
-
Die Daten lassen sich auch bei mir nicht auslesen.
Wenn ich die Datei mit dem UltraEditor aufmache und dann als Sicherungskopie wieder speicher dann funktioniert es. Ich kann dann auch den Namen derDatei ändern und es funktioniert. Wenn ich aber den origional-Namen angebe dann Fehler!
Sorry, keine Ahnung warum das so ist
-
trotzdem Danke.. muss ich wohl weiter rumtesten
-
Ich glaube das Problem hier ist, dass CFile::GetStatus die drei Zeiten
Erstellt m_ctime Geändert am m_mtime Letzter Zugriff m_atime
im Format CTime verarbeitet.
CTime hat aber nur einen Bereich vom 1.1.1970 - 18.1.2038.
Für eine größere Spanne benutzt man da COleDateTime.Wie man das jetzt aber mit GetStatus unter einen Hut bekommt, da bin ich überfragt.
mfg
Andreas
-
hmm vielen Dank erstmal für diesen Hinweis. Falls jemand Idee hat, wäre sehr dankbar. Falls ich was finde, werde ich es hier posten.
-
Jo, CTime suckt ... Ich hab auch einige Dateien auf meiner Platte, die 2078 erstellt wurden. Da stürzt CTime gnadenlos ab ...
-
leider habe ich noch keine Möglichkeit gefunden diesen "Bug" zu umgehen..ich finde keine Gunktion mit der ich auch das Datum einer Datei rausbekommen kann.
1)Wie würde man das mit WinAPI machen??
2)Gibt es eine andere Möglichkeit das Datum einer Datei auszulesen?!Danke Danke!