![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Выгрузка dll из самой себя
AXEL65 © (2007-05-09 11:35:00)Здраствуйте, подскажите, пожалуйста, как можно выгрузить dll
из самой себя.
Например такой код:
В программе, которая загружает dll
procedure TForm1.Button1Click(Sender: TObject);
begin
Dll:=LoadLibrary('Project1.dll');
end;
Код самой dll:
begin
MessageBox(0, 'Dll загружена', '', 0);
//Здесь нужно выгрузить dll из программы. FreeLibrary почему-то завершает сам процесс, который загрузил dll.
end.
Rouse_ (2007-05-10 13:07:00) [1]
library test;
uses
Windows;
{$R *.res}
procedure TimerProc(Handle: THandle; uMsg, idEvent: UINT;
dwTime: DWORD); stdcall;
begin
FreeLibrary(HInstance);
end;
var
h: THandle;
begin
MessageBox(0, 'qwe', 'asd', 0);
SetTimer(0, 0, 0, @TimerProc);
end.
Leonid Troyanovsky (2007-05-10 13:03:00) [2]
> AXEL65 (09.05.07 11:35)
> Здраствуйте, подскажите, пожалуйста, как можно выгрузить dll
> из самой себя.
FreeLibraryAndExitThread
--
Regards, LVT.
{RASkov} (2007-05-10 11:07:00) [3]> [3] niko_ © (10.05.07 10:45)
> Так в том то и дело что выгрузку надо осуществит именно из Dll.
> Я как то уже обращался на данный форум с таким же вопросом,
> но мне так ни кто толком и не ответил :(
> скоко копался так ни чё и не придумал.
Значит это такой гимор, что не стоит этим заниматься.... Я, на данный момент, ответа на конкретный вопрос не знаю, верю только, что невозможного не бывает... в компьютерной сфере....
А в самом деле для чего это? Почему не устраивают стандартные способы? Да и Dll использует подсчет ссылок, и если стала "не кому не нужна", то сама выгружается....
niko_ (2007-05-10 10:45:00) [4]{RASkov}: Так в том то и дело что выгрузку надо осуществит именно из Dll.
Ну, в моём случае именно так.
{RASkov} (2007-05-10 10:40:00) [5]> [0] AXEL65 (09.05.07 11:35)
Если в Dll известен "какой нить хэндл из проги", то, при необходимости выгрузки dll из самой dll, послать сообщение и уже в программе выгрузить dll....
niko_ (2007-05-10 10:19:00) [6]Я как то уже обращался на данный форум с таким же вопросом, но мне так ни кто толком и не ответил :(
Как чё нить придумаешь буду очень признателен если поделишся, я скоко копался так ни чё и не придумал.