Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Компьютеры » Прикладное программирование » Подключение библиотеки dll из другой папки в Delphi

Модерирует : ShIvADeSt

 Версия для печати • ПодписатьсяДобавить в закладки

Открыть новую тему     Написать ответ в эту тему

alex0413



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Есть отдельная папка в Temp. Туда при запуске программы с ресурсов распаковываются библиотеки ssleay32.dll и libeay32.dll для Synapse. Но никак не удается подключить их с той директории. Если только положить рядом с программой, то все работает без проблем. Путь указываю в LoadLibrary. Даже при использовании пути D:\***.dll все равно не работает. Что я делаю не так?

Всего записей: 139 | Зарегистр. 15-01-2011 | Отправлено: 05:01 13-12-2015
reenoip



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
alex0413, а пробовал своё приложение запускать от имени администратора?

Всего записей: 1768 | Зарегистр. 10-03-2006 | Отправлено: 08:33 13-12-2015
KDPoid



Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
alex0413,
смотрим

Цитата:
 
LoadLibrary
...
Return Value
If the function succeeds, the return value is a handle to the module.
 
If the function fails, the return value is NULL. To get extended error information, call GetLastError.
 

Так может это... Посмотреть в GetLastError, что пошло не так ?
Прав нет, ошибка в пути или даже какие-нибудь загадочные ERROR_OUTOFMEMORY, ERROR_TOO_MANY_OPEN_FILES...

Всего записей: 404 | Зарегистр. 08-08-2006 | Отправлено: 09:41 13-12-2015
alex0413



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
KDPoid
Спасибо за помощь, уже ближе к разгадке
Почему-то одна библиотека не грузится, хотя по пути она есть...

126 - ERROR_MOD_NOT_FOUND
 
Добавлено:
reenoip
запуск от имени администратора не помог, да и не думаю что должен был помочь

Всего записей: 139 | Зарегистр. 15-01-2011 | Отправлено: 16:17 13-12-2015 | Исправлено: alex0413, 16:50 13-12-2015
Alexzzy

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
alex0413
Для начала запустите Process Explorer и посмотрите по какому пути идет обращение к библиотеке.

Всего записей: 1474 | Зарегистр. 10-07-2013 | Отправлено: 17:04 13-12-2015
alex0413



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Alexzzy
одна библиотека загрузилась, но в списке её не нашел. Не думаю что я там же найду библиотеку которая вообще не загрузилась. Может я не там смотрю? Выбираю процесс и View DLL`s (ctrl + d).

Всего записей: 139 | Зарегистр. 15-01-2011 | Отправлено: 17:48 13-12-2015 | Исправлено: alex0413, 17:59 13-12-2015
Alexzzy

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
alex0413
Извиняюсь, перепутал. Нужен Process Monitor. Включить Show File System Activity, а остальное отключить. Ненужные процессы можно в "Exclude" добавить.

Всего записей: 1474 | Зарегистр. 10-07-2013 | Отправлено: 18:09 13-12-2015 | Исправлено: Alexzzy, 18:14 13-12-2015
alex0413



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Alexzzy
посмотрел, и я так понял, что первая библиотека не грузится потому, что она во время загрузки начинает подгружать зависимые библиотеки по пути, где находится программа, вместо необходимого мне.
 
Добавлено:
Изменил рабочую папку программы с помощью SetCurrentDir(), теперь даже путь библиотекам не нужно указывать, они сами оттуда загружаются.
 
Всем спасибо за помощь! Проблема решена!

Всего записей: 139 | Зарегистр. 15-01-2011 | Отправлено: 18:58 13-12-2015
Открыть новую тему     Написать ответ в эту тему

Компьютерный форум Ru.Board » Компьютеры » Прикладное программирование » Подключение библиотеки dll из другой папки в Delphi


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.B0ard
© Ru.B0ard 2000-2024

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru