DEUTSCHE VERSION |
|
Links | | | Forums | | | Comments | | | Report news |
Chat | | | Polls | | | Newsticker | | | Archive |
amiga-news.de Forum > Programmierung > Examine | [ - Search - New posts - Register - Login - ] |
-1- | [ - Post reply - ] |
2007-05-15, 14:20 h Kaesebroetchen Posts: 643 User |
Ich habe unter AROS folgendes Problem. Um die Größe einer Datei herauszufinden bevor ich Sie geladen habe, möchte ich die Examine Funktion verwenden. Bedauerlicherweise führt das unmittelbar zu einem Komplettabsturz. Hier ist mein Code Mache ich da irgenwas grundsätzliches falsch ? -- http://amidevcpp.amiga-world.de/ [ - Answer - Quote - Direct link - ] |
2007-05-15, 14:37 h gni Posts: 1106 User |
Zitat:Versuchs mal so: struct FileInfoBlock MurksFib; ... Examine( BPTRFileLock, &MurksFib ); return MurksFib.fib_Size; und selbst das hat noch Potential für Nichtfunktionieren, da der FileInfoBlock langwortausgerichtet sein muß, dh. man braucht noch eine __aligned Direktive, die jedoch Compilerabhängig ist. Wenn Du das alles umgehen möchtest, dann allokierst Du den FileInfoBlock per AllocDosObject(), den Du dann natürlich per FreeDosObject() wieder freigeben mußt. [ - Answer - Quote - Direct link - ] |
2007-05-15, 14:50 h Kaesebroetchen Posts: 643 User |
@gni: Ah, Danke das funktioniert ! Aus AllocDosObject werde ich nicht so recht schlau. Die Dokumentation ist da recht spärlich: Zitat: Ich finde da wäre ein Beispiel ganz nett... -- http://amidevcpp.amiga-world.de/ [ - Answer - Quote - Direct link - ] |
2007-05-15, 15:13 h gni Posts: 1106 User |
Zitat:Da steht doch alles drin, was Du wissen mußt? Welche Werte "type" annehmen kann, ist in dos/dos.h dokumentiert (zb. DOS_FIB). Die Tagliste kann leer bleiben, entweder per NULL Argument oder eine leere Tagliste, die nur TAG_END enthält. [ - Answer - Quote - Direct link - ] |
2007-05-15, 15:28 h Kaesebroetchen Posts: 643 User |
@gni: z.B. das type in dos.h dokumentiert ist hätte auch ruhig da stehen können Danke für den Hinweis! -- http://amidevcpp.amiga-world.de/ [ - Answer - Quote - Direct link - ] |
2007-05-15, 18:30 h MaikG Posts: 5172 User |
Mit Seek bekommst du auch die größe ohne die Datei in den Speicher zu laden. [ - Answer - Quote - Direct link - ] |
2007-05-16, 08:00 h gni Posts: 1106 User |
Zitat:Schlechter Rat. Abhängig vom Dateisystem ist Seek() um ein Vielfaches langsamer als Examine(). [ - Answer - Quote - Direct link - ] |
2007-05-16, 09:53 h MaikG Posts: 5172 User |
>Schlechter Rat. Abhängig vom Dateisystem ist Seek() um ein Vielfaches langsamer als Examine(). Aha, ist aber einfacher - weil wenn ich sogar mit Seek umgehen kann :-) [ - Answer - Quote - Direct link - ] |
-1- | [ - Post reply - ] |
amiga-news.de Forum > Programmierung > Examine | [ - Search - New posts - Register - Login - ] |
Masthead |
Privacy policy |
Netiquette |
Advertising |
Contact
Copyright © 1998-2024 by amiga-news.de - all rights reserved. |