
さて、最近奇妙な問題に遭遇しました。
ProcessMonitor を起動しようとすると、代わりに別の無関係なプログラム (実際には IM ソフトウェア) が起動します。
結局、ProcessMonitor を起動する唯一の方法は、その IM ソフトウェアをアンインストールすることです。同僚のコンピューターで ProcessMonitor を試してみましたが、誰も同じものを見ることができませんでした。
それで、皆さんはこれを解決する方法を知っていますか? よろしくお願いします。
答え1
次のレジストリ キーを確認してください。
HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options
プログラムの実行をハイジャックする最も簡単な方法は、exeという名前のサブキーを作成することです。
\notepad.exe
exe パスを値として使用する文字列「debugger」の場合、ハイジャッカーは以下を実行しようとします。
"debugger"="c:\windows\system32\cmd.exe"
今度はメモ帳の代わりに cmd が実行されます。おそらく偽の IM がこのような regkey を作成したのでしょう。
ちなみに、ハイジャッカーが svchost のような偽のデバッガーを使用する場合、それは MS 署名の exe であるため、autoruns はデフォルトでハイジャック オプションを非表示にします。
答え2
ビジネス IM プログラム Tencent RTX でも同様の問題が発生しました。
タイプライブラリ内のいくつかの reg エントリを削除することで解決しました。したがって、IM プログラムに関連付けられている疑わしい reg エントリをいくつか削除してみてください。
@Mxx: まったくあいまいではありませんでした。重要なのは、IM プログラム エグゼクティブを参照するタイプライブラリ/API を削除することです。ただし、彼は私の IM プログラム以外の IM プログラムを使用した可能性があり、エントリが一貫していない可能性があります。そのため、私のエントリを指定することに意味はないと考えました。ここでの重要なポイントは、IM プログラム エグゼクティブを参照するタイプライブラリ/API エントリを見つけて削除することです。
これらは、私が指摘したように、typelib/interface エントリであるため、ROOT/Typelib と ROOT/Interface にあります。特定の名前は、IM プログラム固有のものである可能性があります。私の場合、それらは、ROOT/TypeLib の {1512291F-F2F2-4E52-9F6A-5F0756F3B9CB} の typelib にあり、ROOT/Interface の {561A4CFD-9878-4022-AD1E-499FDBB0D72F} の type interface 'IClientApi' によって参照されていました。
ただし、他の IM プログラムで問題を再現できなかったため、彼が私と同じ IM プログラム (RTX) を使用していた、または彼の IM プログラムが同じタイプ ライブラリ/インターフェイスを使用していたという保証はありません。ちなみに、これらのエントリを単に削除しても、IM プログラムが後でそれらを復元する可能性があるため、一時的にしか問題が解決しない可能性がありますが、それはこの質問の範囲外です。
したがって、私の回答は、問題を引き起こしている特定の IM プログラムに対する特定の解決策へのポインターを提供することになります。これにより、問題を引き起こしている特定の IM プログラムの実行への参照を含む ROOT/TypeLib および/または ROOT/Interface 内のエントリの検索を開始できるようになります。