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

Вниз

Непонятности с Service application & DLL   Найти похожие ветки 

 
Чапаев ©   (2005-12-02 10:17) [0]

Delphi 2005, WinXP SP2.

Создаю проект Service Application. В обработчик события OnStart сервиса вставляю такой код: Lib:=LoadLibrary("my.dll"). При завершении работы сервиса вываливается ошибка 0xeefade (кажется, так), если в dll есть хоть одна экспортируемая функция. Если же загружать библиотеку с помощью LoadLibraryEx() с третьим параметром DONT_RESOLVE_EXTERNALS, то ошибки при завершении не возникает.

В чём тут дело?


 
BiN ©   (2005-12-02 10:21) [1]

код длл в студию


 
Чапаев ©   (2005-12-02 11:11) [2]


library My;

function Func:Cardinal;stdcall; //stdcall понадобится в реальной библиотеке, потому и в тестовой я его прописал
begin
 Result:=0;
end;

exports
 Func;

end.


 
Digitman ©   (2005-12-02 11:52) [3]

код сервиса - сюда же ..


 
BiN ©   (2005-12-02 11:52) [4]

Интересует вот-что:

1) как ведет себя обычное приложение при загрузке той же длл
2) есть ли и что именно в  DllMain библиотеки
3) какие модули используются в библиотеке
4) вас ист дас - DONT_RESOLVE_EXTERNALS (может путаешь DONT_RESOLVE_DLL_REFERENCES)


 
Чапаев ©   (2005-12-02 12:40) [5]


> код сервиса - сюда же ..

Обычный Service Application. В обработчик OnStart внесена одна строчка. Других изменений в коде нету. FreeLibrary в OnStop проблему не решает.


> есть ли и что именно в  DllMain библиотеки

Ничего нету. По крайней мере, я туда ничего не вписывал.


> какие модули используются в библиотеке

В тестовом примере -- никаких...


> может путаешь

Да, действительно путаю. Таки DONT_RESOLVE_DLL_REFERENCES. Вот именно DONT_RESOLVE_DLL_REFERENCES и снимает проблему.



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

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

Наверх




Память: 0.48 MB
Время: 0.051 c
2-1138190213
Scavenger
2006-01-25 14:56
2006.02.12
Панель задач.


15-1137648770
Pazitron_Brain
2006-01-19 08:32
2006.02.12
MySQL


4-1133225072
Германн
2005-11-29 03:44
2006.02.12
Как перезапустить службу на удаленном компьютере


6-1130807592
paule
2005-11-01 04:13
2006.02.12
Получение данных с веб -сервера.


6-1131021421
Vetalich
2005-11-03 15:37
2006.02.12
Время задержки (ping)