Форум: "Основная";
Поиск по всему сайту: delphimaster.net;
Текущий архив: 2002.01.17;
Скачать: [xml.tar.bz2];




Вниз

Динамическая плдгрузка dll-библиотеки 


programmer1   (2001-12-28 22:51) [0]

Уважаемые коллеги, подскажите пожалуйста!
Как правильно динамически подгрузить dll-библиотеку к вызывающей программе. Почему-то следующая запись
Handle := LoadLibrary(Library_File_Name.dll);не срабатывает, то есть Handle присваивается ноль. Библиотека лежит в том же каталоге, что и основная программа. Если кто-нибудь пользовался функцией LoadLibrary, скажите, правильно ли я ее вызвала?
Спасибо!



Вадим   (2001-12-28 23:25) [1]

Да



Алексей Петров   (2001-12-29 09:24) [2]

Проверь GetLastError.



gek   (2001-12-29 09:32) [3]

var
HDllIn:THandle;
begin
HDllIn:=0;
HDllIn:=LoadLibrary("Моя библ");//загружаем библиотеку
if HDllIn <> 0 then
begin

.....
Должно работать



petr_v_a   (2001-12-29 13:01) [4]

если с путями/названиями точно все нормально, то
Handle объявите как THandle или любой тип, равный LongWord ( беззнаковое 32bit )
Иногда полезно название библиотеки явно привести к pchar



USAtyj   (2001-12-29 14:05) [5]

Апострофы не помешают...

Handle := LoadLibrary( "Library_File_Name.dll ");



Andrey   (2001-12-29 14:14) [6]

var h: THandle;
s: string;
begin
h:=LoadLibrary("Library_File_Name.dll");
if h>0 then
FreeLibrary(h)
else
begin
SetLength(S, 256);
FormatMessage(FORMAT_MESSAGE_FROM_SYSTEM, nil,
GetLastError(), 0, PChar(S), Length(S), nil);
ShowMessage(Trim(S));
end;
end;



Вадим   (2001-12-29 15:22) [7]

2USAtyj

Ты считаешь, что без апострофов это дело будет компилироваться?



USAtyj   (2001-12-29 16:17) [8]

2Вадим ©
Я как раз имею в виду, что название длл в апострофах должно быть.



skaminski~   (2001-12-29 17:45) [9]

Проверь, не есть ли это 16-битная библиотека. Очень часто бывает. И черезе LoadLibrary ты ее не загрузишь, проврь GetLastError.



programmer1   (2002-01-01 22:49) [10]

Спасибо, мои хорошие друзья !!!! С вами я не пропаду !!!!
С Новым годом!




Форум: "Основная";
Поиск по всему сайту: delphimaster.net;
Текущий архив: 2002.01.17;
Скачать: [xml.tar.bz2];




Наверх





Память: 0.72 MB
Время: 0.018 c
6-52634           Star                  2001-10-23 16:35  2002.01.17  
Контроль за файлами ...


3-52502           Easy                  2001-12-08 12:03  2002.01.17  
Как можно исправить запись с испорченным мемо-полем в dbf-таблице?


3-52507           Softmaster            2001-12-16 14:46  2002.01.17  
Проблема с группировкой в отчете при использовании QReport


1-52611           StelZ                 2001-12-31 13:59  2002.01.17  
Модальная форма


14-52643          Андрей Сенченко       2001-11-19 17:13  2002.01.17  
Зачем нужны DLL ?