Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.04.18;
Скачать: CL | DM;

Вниз

Как записать в Buffer побайтно   Найти похожие ветки 

 
Bizquit   (2004-03-31 06:41) [0]

Как записать в Buffer побайтно так, как это делает ф-я ReadFile из Kernel32.dll?

Собственно проблема вот в чем:
Нужно переопределить TStream.Read(var Buffer; Count: Longint): Longint; таким образом, чтобы при попытке считать Count байт из потока, внутри функции она читала по одному байту, XOR-ила его и записывала в буфер.
Наверно криво объяснил :( покажу на примере:

// TPWDFileStream потомок TFileStream

function TPWDFileStream.Read(var Buffer; Count: Integer): Longint;
var
 i: integer;
 b: byte;
begin
 for i := 0 to count-1 do if inherited Read(b,1) = 1 then
 begin
   buffer[i] := b; //или что-то типа того
   //и тд. и тп.
 end;
end;

в общем надо последовательно заполнить буфер. Реально ли это?


 
Fay ©   (2004-03-31 08:28) [1]

A readfile чем не катит?


 
Digitman ©   (2004-03-31 08:50) [2]

function TPWDFileStream.Read(var Buffer; Count: Integer): Longint;
var
i: integer;
begin
Result := inherited Read(Buffer, Count);
for i := 0 to Result - 1 do
 begin
  Buffer[i] := Buffer[i] xor что-то;
 end;
end;



Страницы: 1 вся ветка

Текущий архив: 2004.04.18;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.035 c
14-1080339459
Mr.BiZONe
2004-03-27 01:17
2004.04.18
WWW.MISHABOG.NAROD.RU


4-1076514190
Timego
2004-02-11 18:43
2004.04.18
CLSID COM-объекта по полному пути к его dll-файлу


1-1080392550
Yuri Btr
2004-03-27 16:02
2004.04.18
Отрисовка background в строке List View


14-1080133272
Gorlum
2004-03-24 16:01
2004.04.18
Про .NET


14-1080308521
DCoder
2004-03-26 16:42
2004.04.18
Требования к программистам (юмор)