2009-09-07 19 views
8

Program tworzy muteks jako część jego uruchomienia. Nie znam formatu tego muteksu, więc zastanawiałem się, czy istnieje sposób, aby uzyskać listę wszystkich nie opuszczonych muteksów, otworzyć program, uzyskać nową listę i zobaczyć, czy mogę znaleźć muteksa, usuwając wszystkie zduplikowane wpisy .Uzyskaj listę muteksów?

Czy istnieje sposób, aby uzyskać tę listę?

Odpowiedz

13

Jeśli korzystasz z systemu Windows, WinObj może wyświetlać nazwane muteksy. Lub możesz użyć Process Explorer, aby dowiedzieć się, które obiekty konkretny proces został otwarty.

+0

a co nienazwane muteksy? – bzupnick

+0

Jeśli muteks nie ma nazwy, nie można uzyskać (łatwo) z innego procesu, więc jest to kwestia sporna. –

0

Jeśli masz program WinObj.exe, prawdopodobnie masz również plik handle.exe , który również jest z pakietu SysInternals-Suite.

Czasami znalazłem

handle -a |findstr /C:Mutant /C:pid: 

być pomocne. Wyświetla to również nienazwane Muteksy.

BTW: Jeśli nie chcesz polegać na zgodności formatu wyjściowego (użyłem wersji v3.51) należy uchwycić całą moc rączką -a i szukać ręcznie lub skorzystać

handle -a -p %YOUR_PID% 
Powiązane problemy