プログラムは、起動時にミューテックスを作成します。このミューテックスの形式がわからないので、放棄されていないすべてのミューテックスのリストを取得し、プログラムを開いて新しいリストを取得し、重複するエントリをすべて削除してミューテックスを見つけることができるかどうかを確認する方法があるかどうか疑問に思いました.
このリストを取得する方法はありますか?
プログラムは、起動時にミューテックスを作成します。このミューテックスの形式がわからないので、放棄されていないすべてのミューテックスのリストを取得し、プログラムを開いて新しいリストを取得し、重複するエントリをすべて削除してミューテックスを見つけることができるかどうかを確認する方法があるかどうか疑問に思いました.
このリストを取得する方法はありますか?
Windows を使用している場合、WinObjは名前付きミューテックスを表示できます。または、 Process Explorerを使用して、特定のプロセスが開いているオブジェクトを見つけることができます。
WinObj.exe がある場合は、SysInternals-Suite からの handle.exe もある可能性があります。
たまに見つけた
handle -a |findstr /C:Mutant /C:pid:
役立つこと。これは、名前のないミューテックスも表示します。
ところで:出力形式の互換性に依存したくない場合(私はバージョンv3.51を使用しました)、ハンドルの出力全体をキャプチャし、手動で検索するか、使用する必要があります
handle -a -p %YOUR_PID%