![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Вызов функций из Dll
Genocid © (2004-11-02 21:53:00)Такая ситуация: имеется программа и загружаемая ей Dll.
В программе содержутся 2 функции для взаимодействия с библиотекой:
type
TPlugin = class
public
function GetApplication: TApplication; virtual; stdcall;
function GetText(flag: string): String; virtual; stdcall;
end;
Так вот, при вызове их из dll первая функция работает абсолютно корректно, а вот вторая первые три вызова выполняется правильно,
на четвертом вызове выводит пустую строку и на пятом вызывает ошибку! =)
Причем даже если имеет следующий вид:
function TPlugin.GetText(flag: string): String;
begin
Result := 'a';
end;
Вроде бы обе функции по виду аналогичны и по большому счету различаются лишь типом результата... Только вот первая работает без пререканий, а вот вторая...
Что это за мистика? 8)
Genocid (2004-11-03 01:44:00) [1]Мля, вот подстава! Я с этой проблемой столько мучился, а решение оказалось таким банальным! -) Ладно, спасибо всем.
Kind (2004-11-02 22:34:00) [2]Sharemem как сказал Poirot, а лучше PChar вместо String используй (в DLL)
Poirot (2004-11-02 21:55:00) [3]Проблема с обработко строк:)
sharemem Тебе поможет:) RTFM Для пущей убедительности или просто поиск по данному форуму:)
Enjoy! :)