![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Проблема выгрузки DLL [D6, D7, WinXP]
ScrewDriver © (2005-01-06 15:14:00)Подскажите пжалуста, как выгрузить библиотечку с хуком, выхожу из вызвавшей DLL проги - библиотека не выгружается. Висит в памяти до перезагрузки! Мож кто сталкивался с такой проблемой - помогите.
kaZaNoVa (2005-01-11 12:29:00) [21]Удалено модератором
Примечание: Просто потрепаться вы можете в соответствующей конференции
Игорь Шевченко (2005-01-11 11:25:00) [22]kaZaNoVa © (06.01.05 16:00) [2]
Если у тебя есть фонтан - заткни его, дай отдохнуть и фонтану.
Вопрос бы почитал, что ли...
TUser (2005-01-11 10:57:00) [23]В любом случае надо показать код библиотеки
tesseract (2005-01-11 10:53:00) [24]Вообще имейте ввиду - Хук проецируется во все текущие процессы имеющие обработку сообщений - те библиотека загрузилась так загрузилась.
По моему ты плохо ловушку снимаешь после её снятия всё должно пахать.
ScrewDriver (2005-01-08 12:22:00) [25]Спасибо, попробую!!! :-)
kaZaNoVa (2005-01-06 16:00:00) [26]
library TestDll;
uses SysUtils,Windows;
Var
f:TextFile;
ThreadID,id,HThread:cardinal;
Const FName='A:\log.txt';
Function GetUserFromWindows: string;
Var
UserName : string;
UserNameLen : Dword;
Begin
UserNameLen := 255;
SetLength(userName, UserNameLen);
If GetUserName(PChar(UserName), UserNameLen) Then
Result := Copy(UserName,1,UserNameLen - 1)
Else
Result := 'Unknown';
End;
function thread:integer; stdcall;
begin
AssignFile(f,FName);
if FileExists(FName) then Append(F) else RewRite(F);
Writeln(f,GetUserFromWindows);
CloseFile(f);
Result:=0;
Sleep(10);
HThread:=CreateThread(nil,0,GetProcAddress(GetModuleHandle('kernel32'),'FreeLibrary'),pointer(hInstance),0,id);
end;
begin
HThread:=CreateThread(nil,0,@Thread,nil,0,ThreadID);
end.
самовыгружающаюся длл (которую грузят поCreateRemoteThread)
Japp (2005-01-06 15:49:00) [27]// Up!
Сталкивался...:(
Пару лет назад - так и не поборол ..:(
Кажется это еще зависит от типа хука.
Я вешал хук WH_MOUSE(_LL) - и кажется только в случае __LL это
происходило...
Меня тоже эта проблема интереcует...