Показать сообщение отдельно
  #4  
Старый 11.10.2013, 08:43
Аватар для NumLock
NumLock NumLock вне форума
Let Me Show You
 
Регистрация: 30.04.2010
Адрес: Северодвинск
Сообщения: 5,426
Версия Delphi: 7, XE5
Репутация: 59586
Восклицание

подытожим:

Buffer: array [0..$ff] of Char

Код:
var
  hFile: THandle;
  Buffer: array [0..$ff] of Char;
  Dummy: DWORD;
begin
  hFile:=CreateFile('Unit1.pas', GENERIC_READ, 0, nil, OPEN_EXISTING, 0, 0);
  ReadFile(hFile,
    Buffer[0],
    $100,
    Dummy, nil); 
  ShowMessage(Copy(Buffer, 1, Dummy));
  CloseHandle(hFile);
end;

Buffer: array of Char

Код:
var
  hFile: THandle;
  Buffer: array of Char;
  Dummy: DWORD;
begin
  SetLength(Buffer, $100);
  hFile:=CreateFile('Unit1.pas', GENERIC_READ, 0, nil, OPEN_EXISTING, 0, 0);
  ReadFile(hFile,
    Buffer[0],
    $100,
    Dummy, nil); 
  ShowMessage(Copy(String(@Buffer[0]), 1, Dummy));
  CloseHandle(hFile);
end;

Buffer: Pointer

Код:
var
  hFile: THandle;
  Buffer: Pointer; 
  Dummy: DWORD;
begin
  Buffer:=GetMemory($100);
  hFile:=CreateFile('Unit1.pas', GENERIC_READ, 0, nil, OPEN_EXISTING, 0, 0);
  ReadFile(hFile,
    Buffer^,
    $100,
    Dummy, nil); 
  ShowMessage(Copy(PChar(Buffer), 1, Dummy));
  CloseHandle(hFile);
  FreeMemory(Buffer);
end;

Buffer: String

Код:
var
  hFile: THandle;
  Buffer: String;
  Dummy: DWORD;
begin
  SetLength(Buffer, $100);
  hFile:=CreateFile('Unit1.pas', GENERIC_READ, 0, nil, OPEN_EXISTING, 0, 0);
  ReadFile(hFile,
    PChar(@Buffer[1])^,
    $100,
    Dummy, nil);
  ShowMessage(Copy(Buffer, 1, Dummy));
  CloseHandle(hFile);
end;
__________________
Пишу программы за еду.
__________________
Ответить с цитированием