Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Crypt [D6, WinME]


LYNXic ©   (2002-10-16 15:08:00) 

Почему этот код шифрует не весь текст, а только примерно 70-80 символов

unit Crypt32;

interface

const
StartKey = 981;
MultKey = 12674;
AddKey = 35891;

function Encrypt(const InString:string; StartKey,MultKey,AddKey:Integer): string;

implementation

{$R-}
{$Q-}

function Encrypt(const InString:string; StartKey,MultKey,AddKey:Integer): string;
var
I : Byte;
begin
Result := "";
for I := 1 to Length(InString) do
begin
Result := Result + CHAR(Byte(InString[I]) xor (StartKey shr 8));
StartKey := (Byte(Result[I]) + StartKey) * MultKey + AddKey;
end;
end;
{$R+}
{$Q+}

end.


McSimm   (2002-10-16 15:12:00) [1]

Этот код был написан для строк длиной < 256 символов.
Замени в обоих функциях

I : Byte;
на
I : Integer;
Все заработает.


Наверх

Титульная страница Поиск, карта сайта Написать письмо