Показать сообщение отдельно
  #2  
Старый 31.05.2019, 21:02
lmikle lmikle вне форума
Модератор
 
Регистрация: 17.04.2008
Сообщения: 8,087
Версия Delphi: 7, XE3, 10.2
Репутация: 49089
По умолчанию

Все зависит от того, как тебе надо представить данные.
Например, массив байт:
Код:
type
  TBytesArray : Array Of Byte;
var
  Data : TBytesArray;
  F : TFileStream;
begin
  F := TFileStream.Create('file.txt',fmOpenRead);
  Try
    SetLength(Data,F.Size);
    F.ReadBuffered(Data[0],F.Size);
  Finally
    F.Free;
  End;
Или как указатель (через TMemoryStream):
Код:
var
  Data : TMemoryStream;
  F : TFileStream;
begin
  Data : TMemoryStream.Create;
  F := TFileStream.Create('file.txt',fmOpenRead);
  Try
    Data.CopyFrom(F,F.Size);
    MyFunction(Data.Memory); // call API and pass the pointer to the data
  Finally
    F.Free;
  End;
Ответить с цитированием