Moin Günter,
probier's mal so:
Code:
begin
iFileHandle := FileOpen('c:\AMS.LG', fmOpenRead);
if iFileHandle <> INVALID_HANDLE_VALUE then
begin
try
iFileLength := FileSeek(iFileHandle,0,2);
FileSeek(iFileHandle,0,0);
Buffer := PChar(AllocMem(iFileLength + 1));
try
iBytesRead := FileRead(iFileHandle,Buffer[0], iFileLength);
for i := 0 to iBytesRead-1 do
begin
StringGrid1.RowCount := StringGrid1.RowCount + 1;
StringGrid1.Cells[1,i+1] := Buffer[i];
StringGrid1.Cells[2,i+1] := IntToStr(Integer(Buffer[i]));
end;
finally
FreeMem(Buffer,iFileLength+1);
end;
finally
FileClose(iFileHandle);
end;
end;
end;
Wichtig ist beim Lesen Buffer
[0], sonst schreibt die Leseroutine in's Nirvana.
***EDIT***
Es ist übrigens recht gefährlich keinen Pfad für die Datei mit anzugeben, und sei es, mit ExtractFilePath(paramstr(0)), relativ zum Programm.
So wie Du es geschrieben hast, greifst Du auf die Datei relativ zum Arbeitsverzeichnis zu, und das kann leicht schiefgehen.