Показать сообщение отдельно
  #13  
Старый 06.03.2013, 10:11
icWasya icWasya вне форума
Местный
 
Регистрация: 09.11.2010
Сообщения: 499
Репутация: 10
По умолчанию

по поводу самого первого сабжа
Код:
procedure EMNPGraph.LoadFromFile(const FileName: TFileName); 
var 
  Stream : TStream;  
  Size : Integer;  
  Buffer: Array of bytes;//<<==-- раз 
begin  
  Stream := TFileStream.Create(FileName, fmOpenRead or fmShareDenyWrite);
  try
    Size := Stream.Size - Stream.Position;
    SetLength(Buffer, Size);
    Stream.Read(Buffer[0], 0, Size); //<<==--- именно так
    // затем делайте что угодно
  finally  
     Stream.Free;   
  end; 
end;

И вообще - когда у функции имеется нетипизированный var или const параметр, а передают массив - то лучше всегда указывать не массив, а первый элемент массива. В случае статического массива это одно и то же, а в случае динамического - две большие разницы
Ответить с цитированием