Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.07.03;
Скачать: CL | DM;

Вниз

Передача строки в DLL   Найти похожие ветки 

 
Oleksiy   (2003-06-20 11:34) [0]

Нужно передать в DLL строку в качестве параметра,
При вызове функции из DLL пишу так ShowList(PChar(Name)). Name типа String. Здесь значение Name нормальное
В самой DLL делаю обратное преобразование StrPas(Name); а вот здесь в Name уже полный бред какой то... Подскажите что не так делаю..


 
jel ©   (2003-06-20 11:37) [1]

А как насчет Uses ShareMem?

Почитай внимательно комментарий, который вставляет среда при создании новой DLL


 
Юрий Федоров ©   (2003-06-20 11:47) [2]

На самом деле в данном случае ShareMem не нужен, параметр то PCHar?
>>Oleksiy
проверь соглашения о вызовах, чтоли ?


 
Anatoly Podgoretsky ©   (2003-06-20 11:51) [3]

jel © (20.06.03 11:37)
А не надо оно в данном случае.

Oleksiy (20.06.03 11:34)
Код давай


 
Oleksiy   (2003-06-20 11:58) [4]

в приложении вызываю функцию, которая описана в dll
ShowReportsList(PChar(frmAbout.InternalName));
в dll
процедура в dll выглядит так
procedure ShowReportsList(AName: PChar); stdcall;
var
frmReportsList: TfrmReportsList;
begin
frmReportsList := TfrmReportsList.Create(Application);
frmReportsList.Caption := StrPas(AName);
frmReportsList.ShowModal;
end;
В итоге в заголовке формы полный бред


 
Delirium ©   (2003-06-20 12:00) [5]

> Oleksiy

unit SysUtils;

function StrPas(const Str: PChar): string;
begin
Result := Str;
end;


Как видно преобразование - автоматическое, так-что "полный бред какой то..." возникает отнюдь не здесь :)


 
Delirium ©   (2003-06-20 12:01) [6]

stdcall; - в проге указываешь ?


 
Oleksiy   (2003-06-20 12:03) [7]

где же тогда?


 
Oleksiy   (2003-06-20 12:05) [8]

с stdcall уже лучше но все равно добавляет в начало строки символ...


 
Юрий Федоров ©   (2003-06-20 12:21) [9]

Приведи код, как ты ее вызываешь в exe


 
Oleksiy   (2003-06-20 12:28) [10]

спасибо всем за помощь, все получилось



Страницы: 1 вся ветка

Текущий архив: 2003.07.03;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.018 c
3-7366
off
2003-06-11 10:01
2003.07.03
IB два в одном или как по умному слить два файла *.gdb в один?


14-7639
Rasa
2003-06-16 02:16
2003.07.03
Скроллинг файлов на экране вверх вниз


1-7426
johny
2003-06-23 11:47
2003.07.03
Подскажите как пользоваться TreeView


1-7460
clickmaker
2003-06-20 14:24
2003.07.03
record как out-параметр в методах IAppServer


14-7640
RKV
2003-06-13 22:12
2003.07.03
Как текст преобразовать в код Delphi