![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Xor части файла [D3, XP]
KLAUS_ © (2007-08-05 20:15:00)Всем привет!
Возникла проблемка на могу заксорить нужную часть файла, делаю так:
fs := TFileStream.Create(path+srec.name,fmOpenReadWrite);
fs.Seek($00000000,soFromBeginning);
str:=inttostr(fs.Read(b,sizeof(b)));
for i:=1 to length(str) do
str[i]:=Chr(Ord(str[i]) xor 1);
fs.Seek($000000000,soFromBeginning);
fs.Write(str,sizeof(str));
fs.Free;
Файл считывается и даже значения меняются но как-то криво, и обратно не возвращается, подскажите где ошибка???
b:=byte;
{RASkov} (2007-08-05 20:58:00) [41]> [4] KLAUS_ (05.08.07 20:51)
Не заметил...[4].
Так тебе некие строки в файле нужно ксорить, но не весь файл..... или весь?
{RASkov} (2007-08-05 20:56:00) [42]В общем:
fs := TFileStream.Create(path+srec.name,fmOpenReadWrite);
fs.Seek($00000000,soFromBeginning); <- Зачем? Оно и так в начале...
str:=inttostr(fs.Read(b,sizeof(b))); <- Вообще не понятен смысл этого.... в Str в виде строки сколько было считано байтов ?
Потом все символы в строке str "кодируем"
for i:=1 to length(str) do
str[i]:=Chr(Ord(str[i]) xor 1);
и сместившись на начало файла
fs.Seek($000000000,soFromBeginning);
пытаемся затереть все, что было и
fs.Write(str,sizeof(str));
записать 4 байта непонятной инфы...
Правильно ли я понял ?
KLAUS_ (2007-08-05 20:51:00) [43]Для начало, чтоб в файле изменились данные при
str[i]:=Chr(Ord(str[i]) xor 1);
Чтоб "KLAUS" стал "JM@TR" , ну это на примере, а так, беру чать кода по нужному адресу, ксору его, данные меняются, ксорю ещё раз данные возвращаются...
ЧТО НЕ ПРАВИЛЬНО ДЕЛАЮ!!
{RASkov} (2007-08-05 20:45:00) [44]> [2] KLAUS_ (05.08.07 20:37)
> Точно!!
> И??
Что должно в итоге получиться из [0] - я не понял...
Но вот так
> fs.Write(str,sizeof(str));
с учетом [1] - это ошибка.
Хотя у тебя длинна Str не будет больше 3, а SizeOf(String) = 4 то.....
В общем объясни, что в итоге хочешь?
KLAUS_ (2007-08-05 20:37:00) [45]Точно!!
И??
Anatoly Podgoretsky (2007-08-05 20:25:00) [46]Наверно str типа string