Einzelnen Beitrag anzeigen

hoika

Registriert seit: 5. Jul 2006
Ort: Magdeburg
8.275 Beiträge
 
Delphi 10.4 Sydney
 
#6

Re: GetMem verursacht Fehler

  Alt 24. Jun 2009, 08:39
Hallo,

per FillChar(DataBlock, #0) kann ein array komplett auf 0 gesetzt werden.

Bei dem Code fällt mir auf.

1. kein Assert
DataBlock16 ist ja wohl ein maximal 16 SmallInt grosser Block

ein Assert(readlength<=16, 'readlength>16')
vor der Benutzung würde das sicherstellen


2. mal prüfen
if RPos+16<= waveDataSize then ReadLength:=16;

ReadLength = 16, OK

DateiStream.Read(DataBlock16[0],readlength*2);

jetzt werden 32 SmallInt in den 16er Block gelesen ?

3. Rechtschreibung
mal heisst es readlength, dann wieder ReadLength
ich setze immer ein Typ-Kürzel davor, bei Integer also
iReadLength


Heiko
Heiko
  Mit Zitat antworten Zitat