![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Шифрование по паролю, косяк с пробелами [D7]
jcrush © (2005-05-26 06:04:00)procedure tcl.Code(var text: string; password: string;
decode: boolean);
var
i, PasswordLength: integer;
sign: shortint;
begin
PasswordLength := length(password);
if PasswordLength = 0 then
Exit;
if decode then
sign := -1
else
sign := 1;
for i := 1 to Length(text) do
text[i] := chr(ord(text[i]) + sign *
ord(password[i mod PasswordLength + 1]));
end;
Digitman (2005-05-26 09:50:00) [21]не знаю уж, что у тебя там заменяется, но у меня этот код работает нормально :
procedure TForm1.Button1Click(Sender: TObject);
var
t: string;
begin
t:= 'A B C D E F G H';
code(t, '1 2 3 4 5 6 ', false);
showmessage(t);
code(t, '1 2 3 4 5 6 ', true);
showmessage(t);
end;
как видишь, пробелы есть и в кодируемой строке и в строке пароля
jcrush (2005-05-26 09:43:00) [22]пробел заменяется символом после расшифровки, а не пробелом как должно быть..
Digitman (2005-05-26 09:10:00) [23]
> косяк с пробелами
и что ж за "косяк", позвольте осведомиться ?