Форум: "Основная";
Текущий архив: 2002.05.02;
Скачать: [xml.tar.bz2];
Внизdll + String +PChar Найти похожие ветки
← →
OlegG (2002-04-16 09:01) [0]Здравствуйте, уважаемые мастера. Возникла следующая проблема:
Есть функция, криптующая строку, передаваемую параметром и возвращает строку в криптованом виде.
const
StartKey = 981;
MultKey = 12674;
AddKey = 35891;
function Encrypt(const InString: string; StartKey, MultKey, AddKey: Integer):string;
function Decrypt(const InString: string; StartKey, MultKey, AddKey: Integer):string;
var
....
implementation
{$R *.DFM}
{$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+}
Решил поместить ее в dll. Но при этом возникают проблемы с типом String (возвращаемое ф-цией). Советуют в качестве возвращаемого параметра использовать PChar. Но после конвертирования результата ф-цией PChar часть строки просто исчезает (очевидно там были пробелы). Естественно, что после декриптования получается только часть строки... В качестве наглядного примера можно передать параметром следующую строку: function Encrypt(const InString: string; StartKey, MultKey, AddKey: Integer):string; После декриптования получится только function Encr
Как быть? Заранее благодарен за советы...
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2002.05.02;
Скачать: [xml.tar.bz2];
Память: 0.44 MB
Время: 0.005 c