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

Вниз

Проверка наличия DLL   Найти похожие ветки 

 
тихий вовочка ©   (2004-02-22 14:09) [0]

У меня статически DLL прикреплена. Но если ее нет в папке с программой и в системных, то прога вылетает с ошибкой. Вставил проверку еще перед Application.Initialize, но вылетает все раньше. Как быть? Писать другую прогу, которая бы проверяла и если находила только тогда запускала бы мою?


 
DiamondShark ©   (2004-02-22 14:17) [1]

Никак не быть.
Наличие (в случае со статической связью) проверяет не программа, а системный загрузчик.


 
Alexander666 ©   (2004-02-22 14:19) [2]

Делай не статистическую загрузку, а динамическую - так разумней


 
DrPass ©   (2004-02-22 14:42) [3]

Наверное, динамическая компоновка не применяется из-за религиозных убеждений???


 
DiamondShark ©   (2004-02-22 14:48) [4]


> Наверное, динамическая компоновка не применяется из-за религиозных
> убеждений???

Да нет. Скорее из-за неоправданной сложности.


 
nikkie ©   (2004-02-22 15:13) [5]

кстати, по поводу терминологии. dll на то и dynamic-link library, чтобы всегда загружаться динамически. то, о чем идет речь, корректнее называть неявное связывание (загрузка) (implicit linking) и явное связывание (загрузка) (explicit linking).


 
Alexander666 ©   (2004-02-22 15:17) [6]

А по-моему это игра слов: что "динамическая загрузка", что "явное связывание" - все равно будет LoadLibrary :-)


 
тихий вовочка ©   (2004-02-22 15:32) [7]

Да нет. Все эти LoadLibrary и прочее я давно использую, но исторически сложилось статическое связывание. Раз никак не проверить, то переделаю в динамику. Спасибо


 
Cobalt ©   (2004-02-22 17:04) [8]

Есть выход!
Делаешь загрузчик для твоей прогги, который проверяет наличие оной библиотеки, а в случае отсутствия - выдаёт соответствующее сообщение (ака ругается). И, соответственно, не загружает прогу.


 
тихий вовочка ©   (2004-02-22 22:11) [9]

Cobalt ты читал, что я писал? Зачем дублировать? Как пользоваться CreateProcess я знаю


 
Shuric ©   (2004-02-22 22:17) [10]

Удалено модератором


 
Гаврила   (2004-02-22 22:23) [11]

Динамическая загрузка и всех делов :-)))


 
Shuric ©   (2004-02-22 22:24) [12]

За что, имелась ввиду дирректива в юните проекта, а это разные вещи (Application.Initialize), если не ошибаюся.


 
Nick Denry ©   (2004-02-23 00:35) [13]

2>Cobalt © (22.02.04 17:04) [8]
написание собственного загрузчика - весчь не менее, а я бы сказал более трудоемкая, чем динамическая загрузка...



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

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

Наверх




Память: 0.49 MB
Время: 0.019 c
1-43479
Makhanev A.S.
2004-03-02 15:00
2004.03.14
RichEdit: индексы начала/конца видимых символов


1-43492
HydraMarat
2004-02-27 14:47
2004.03.14
Для чего нужен dispinterface?


14-43758
ищущий
2004-02-19 13:01
2004.03.14
параллельный вывод на lpt и com


11-43420
savva
2003-06-27 11:07
2004.03.14
Toolbar - расположение кнопок


3-43270
Zilog
2004-01-23 13:25
2004.03.14
DBGrid - напонятный глюк.