Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 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
1-2579
АНАТОЛИЙ
2002-04-19 10:50
2002.05.02
TYPELIB


4-2725
Александр_
2002-02-27 19:20
2002.05.02
Вопрос о Звуке.


4-2719
sdan
2002-02-28 17:38
2002.05.02
API


14-2676
Hurin
2002-03-27 12:24
2002.05.02
Подлая DLL


1-2588
YurikVN
2002-04-16 00:45
2002.05.02
EXE из EXE





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский