Цитата:
Сообщение от Alegun
Архив и проект рабочие, результат показывает детальный список запущенных процессов
З.Ы. Кстати
а уничтожить
|
Это свой mutex. А чужой? Я уже как неделю мучаюсь. Через procexp запросто можно найти этот мутекс и убить.
Я написал dll, и инжектирую её в процесс который создал мутекс.
Код dll такой:
Код:
var
Timer,i: dword;
hProc1:HWND;
procedure TimerProc(hwnd, uMsg, idEvent, dwTime: dword);stdcall;
var
PID:Integer;
hMutex:THandle;
begin
hProc1:=OpenProcess(PROCESS_DUP_HANDLE, false, GetCurrentProcessId);
hMutex:=OpenMutex(MUTEX_ALL_ACCESS, true, '_!MSHISTORY!_');
if hMutex <> 0 then ShowMessage('ok') else ShowMessage('nooo');
DuplicateHandle(hProc1, hMutex, 0, 0, 0, false, DUPLICATE_CLOSE_SOURCE);
CloseHandle(hMutex);
end;
begin
Timer:=SetTimer(0,0,1000,@TimerProc);
end.
И всеравно не работает. Вот мой топик на форуме ваших коллег:
http://www.cyberforum.ru/delphi-begi...ad1639687.html