![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Пример DLL [D7]
Углук © (2007-03-05 07:33:00)Здравствуйте! Можно посмотреть несложный пример исходника DLL для понимания структуры?
Углук (2007-03-05 08:01:00) [1]Исчерпывающий ответ
Loginov Dmitry (2007-03-05 08:01:00) [2]> А при выгрузке библиотеки можно что-нибудь выполнить?
Используй секцию finalization (только в паре с initialization, иначе не скомпилится).
SlymRO (2007-03-05 07:58:00) [3]Углук © (05.03.07 7:49) [6]
А при выгрузке библиотеки можно что-нибудь выполнить
library Project1;
function Run(param1:integer):integer;stdcall;
begin
halt(0);
end;
procedure EntryProc(dwReason: DWORD);
begin
case dwReason of
DLL_PROCESS_DETACH: ;//Сюда заходим при выгрузке
DLL_PROCESS_ATTACH: Run(0);
DLL_THREAD_ATTACH: ;
DLL_THREAD_DETACH: ;
end;
end;
exports Run;
begin
DLLProc:=@EntryProc;
EntryProc(Dll_Process_Attach);
end.
Углук (2007-03-05 07:50:00) [4]И еще вопрос: что содержит *.res файл dll, если это не resource dll?
Углук (2007-03-05 07:49:00) [5]
> Код инициализации (т.е., выполняющийся при загрузке библиотеки
А при выгрузке библиотеки можно что-нибудь выполнить?
SlymRO (2007-03-05 07:47:00) [6]Ничего... До времени когда чтонибудь потребуется туда писать пройдет еще нимало времени...
Углук (2007-03-05 07:47:00) [7]Ясно, спасибо
Джо (2007-03-05 07:44:00) [8]> [2] Углук © (05.03.07 07:39)
> Спасибо, понятно.
> А вот в последнем begin..end. что выполняется?
Код инициализации (т.е., выполняющийся при загрузке библиотеки).
Углук (2007-03-05 07:39:00) [9]Спасибо, понятно.
А вот в последнем begin..end. что выполняется?
SlymRO (2007-03-05 07:36:00) [10]library Project1;
function Run(param1:integer):integer;stdcall;
begin
halt(0);
end;
exports Run;
begin
end.