Главная страница
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.052 c
2-1138253763
Radix
2006-01-26 08:36
2006.02.12
Сделать выборку пропущенных номеров из БД на SQL


2-1137780031
Senti
2006-01-20 21:00
2006.02.12
Как правильно освободить память Record


1-1136939802
plop
2006-01-11 03:36
2006.02.12
Visio + Delphi


9-1125221933
ArtemESC
2005-08-28 13:38
2006.02.12
Задний фон в OpenGL


2-1138344320
Daria
2006-01-27 09:45
2006.02.12
Как открыть CSV по OLE из программы