Seite 1 von 1

Kleines Speicherproblem

Verfasst: 02.02.2009 18:37
von TuX.
Hallo,

ich habe gerade etwas mit Memorybuffern gemacht. Das Programm liest eine Datei in den Speicher ein und gibt die größe der Datei und des Speicherbereichs aus

Code: Alles auswählen

File$ = OpenFileRequester("","","All files|*.*",0)
ReadFile(0,File$)
lof =  Lof(0)
Debug "Lof: " + Str(lof)
buf = AllocateMemory(lof)
Debug "Size Buffer: " + Str(SizeOf(buf))
ReadData(0,buf,lof)
Debug "Content Buf: |" + PeekS(buf,lof) + "|"
CloseFile(0)
FreeMemory(buf)
Das Programm gibt folgendes bei mir aus:

Code: Alles auswählen

Lof: 21579
Size Buffer: 4
Content Buf: |ÿØÿà|
Egal, welche Datei ich einlesen lasse, die Größe des Speicherbereichs ist immer 4 Bytes groß bei mir.

Weiß jemand woran das liegen könnte und wie man das Problem behebt?

Danke

Verfasst: 02.02.2009 18:42
von cxAlex
Du verwendest SizeOf(), richtig währe MemorySize().

Code: Alles auswählen

File$ = OpenFileRequester("", "", "All files|*.*", 0)
ReadFile(0, File$)
lof = Lof(0)
Debug "Lof: " + Str(lof)
buf = AllocateMemory(lof)
Debug "Size Buffer: " + Str(MemorySize(buf))
ReadData(0, buf, lof)
Debug "Content Buf: |" + PeekS(buf, lof) + "|"
CloseFile(0)
FreeMemory(buf)

Re: Kleines Speicherproblem

Verfasst: 02.02.2009 18:43
von Kiffi

Code: Alles auswählen

Debug "Size Buffer: " + Str(lof)
oder

Code: Alles auswählen

Debug "Size Buffer: " + Str(MemorySize(buf))
Grüße ... Kiffi

Verfasst: 02.02.2009 18:52
von TuX.
Vielen Dank euch beiden