Форум: "Начинающим";
Текущий архив: 2005.11.20;
Скачать: [xml.tar.bz2];
Внизкак подключить dll? Найти похожие ветки
← →
syte_ser78 © (2005-10-31 11:12) [0]В Project manager - 2 проекта. Один - основной и второй dll к нему.
как подключить к первому проекту эту длл?
← →
stone © (2005-10-31 11:20) [1]LoadLibrary?
← →
Tonich © (2005-10-31 11:56) [2]можно и статически это сделать (легче если вообще в первый раз это делать), но динамически конечно же лучше )
← →
syte_ser78 © (2005-10-31 12:01) [3]Tonich © (31.10.05 11:56) [2]
Можно поподробнее о первом способе?
← →
Crazy_Diman © (2005-10-31 12:05) [4]Procedure TestDLL (Test : Sting); Stdcall; External "Test.dll";
← →
Tonich © (2005-10-31 12:08) [5]поподробнее...хмм в нете правдо куча примеров по этому делу
вообщем
объявляеш процедуру(функцию) в своем приложени, с теми же параметрами как и у экспортируемой процедыры(функции) затем
procedure Proc(....); external "тут указываешь имя библиотеки";
ну и можно еще дописать сошлашение о вызове, то которое использовано при экспорте из dll-ки
да!! если ты эту процедуру(функцию) экспортируешь не по индексу и не по имени то имя процедуры в хосте должно совпадать с именем процедуры(функции) в Dll
примеров по этому делу завались...!
← →
Crazy_Diman © (2005-10-31 12:11) [6]type
TTEst = function ( Test : Sting): string;
var
hndDLLHandle: THandle;
test: TTEst;
try
// загружаем dll динамически
hndDLLHandle := loadLibrary ( test.dll" );
if hndDLLHandle <> 0 then begin
// получаем адрес функции
@calc_double := getProcAddress ( hndDLLHandle,"TestDLL");
// если адрес функции найден
if addr ( calc_double ) <> nil then begin
// здесь выполняеш код
end else
showMessage ( "Функция не существует..." );
end else
// DLL не найдена
showMessage ( "DLL, не найдина..." );
finally
freeLibrary ( hndDLLHandle );
end;
end;
← →
syte_ser78 © (2005-10-31 12:31) [7]а как указать в настройках преокта указать где эта дллка лежит?
← →
stone © (2005-10-31 12:35) [8]
> syte_ser78 © (31.10.05 12:31) [7]
> а как указать в настройках преокта указать где эта дллка
> лежит?
Если в той же папке, где и ехе-шник, то ничего указывать не надо
← →
Crazy_Diman © (2005-10-31 12:36) [9]project->Options->directories ну что тотакое -> Output derectory и указывай куда сохранять
← →
Crazy_Diman © (2005-10-31 12:37) [10]> syte_ser78 © (31.10.05 12:31) [7]
> а как указать в настройках преокта указать где эта дллка
> лежит?
> Если в той же папке, где и ехе-шник, то ничего указывать не надо
Он незнает где dll сохранилась
← →
syte_ser78 © (2005-10-31 12:38) [11]stone © (31.10.05 12:35) [8]
брр
Может я многого хочу, но вобщем хочу вот что.
Два октрытых в прожект менеджере проекта.
Один - мой проект и второй - моя дллка.
Пр булд ол все это переделывается и мой проект использует дллку с папки втоорого проекта. Если же дллка есть в папке проекта (тоесть готового к употреблению экзешнкиа) то используется она.
← →
Crazy_Diman © (2005-10-31 12:43) [12]stone © (31.10.05 12:35) [8]
брр
Может я многого хочу, но вобщем хочу вот что.
Два октрытых в прожект менеджере проекта.
Один - мой проект и второй - моя дллка.
Пр булд ол все это переделывается и мой проект использует дллку с папки втоорого проекта. Если же дллка есть в папке проекта (тоесть готового к употреблению экзешнкиа) то используется она.
я тебя не понел опесни нормально
← →
stone © (2005-10-31 12:45) [13]Ты оба проетка билди в одну папку (см. [9])
Страницы: 1 вся ветка
Форум: "Начинающим";
Текущий архив: 2005.11.20;
Скачать: [xml.tar.bz2];
Память: 0.47 MB
Время: 0.039 c