Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 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.041 c
9-1120158033
4ECHOK
2005-06-30 23:00
2005.11.20
Где найти SMD-модели.


2-1130767781
stud
2005-10-31 17:09
2005.11.20
получить код ошибки


14-1130755482
WondeRu
2005-10-31 13:44
2005.11.20
Плагины и менюшки!


4-1126864296
Still Swamp
2005-09-16 13:51
2005.11.20
Необходимо из сервиса запустить интерактивный EXE.


14-1130311657
boriskb
2005-10-26 11:27
2005.11.20
Это наша страна?





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский