web-dev-qa-db-ja.com

Process Explorerに置き換えられたときに組み込みのタスクマネージャーを開く方法

組み込みのタスクマネージャーを開きたいProcess ExplorerのReplace Task Managerオプションをオンにして。私はもう試した:

  • 実行ダイアログからtaskmgr.exeを実行しています。代わりにPEが開かれました。

  • 同じフォルダにtaskmgr.exeのコピーを作成します。それを実行します。組み込みのタスクマネージャーが開かれましたが、正常に動作していません(そのウィンドウは空白でした)。

  • 同じフォルダにtaskmgr.exeのシンボリックリンクを作成する(mklinkを使用)。それを実行します。代わりにPEが開かれました。

私が試すことができる他の方法はありますか?ありがとう。

26
Inglis Baderson

ここには2つの問題があります。

  • Process Explorerがタスクマネージャから引き継ぐ方法は、レジストリ値を追加することです。

    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\taskmgr.exe\Debugger

これは、「taskmgr.exe」という名前の実行可能ファイルを起動するたびに、代わりにこの値で指定されているものを起動することを意味します。したがって、タスクマネージャを別のディレクトリに移動しても機能しません。

  • Taskmgr.exeの名前を別の名前に変更すると、タスクマネージャ内で何かが壊れるようです。そのため、空のウィンドウが表示されます。これは奇妙な動作です。通常、実行可能ファイルの名前を変更しても問題ありません。

    名前が変更されたタスクマネージャの動作はかなり変わっています。中レベルの整合性レベルから開始した場合でも、自動的に高整合性レベルで実行され、ローカルシステム権限があっても強制終了できません。

そのため、現時点では、Process Explorerをデフォルトのタスクマネージャーとして使用し、同時にタスクマネージャーを実行する方法はありません。

回避策はそれほど悪くありません:

プロセスエクスプローラーで、[オプション-タスクマネージャーの置き換え]をオフにしてから、[taskmgr.exe]を実行し、[オプション-タスクマネージャーの置き換え]をもう一度クリックします。

または、そのレジストリ設定を削除してタスクマネージャを起動し、設定を元に戻すバッチファイルを作成することもできます。

 reg.exe delete "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\taskmgr.exe" /v Debugger /f
 start taskmgr.exe
 reg.exe add "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\taskmgr.exe" /v Debugger /t REG_SZ /d "C:\PATHTO\PROCEXP.EXE" /f

このバッチの唯一の問題は、管理者特権で実行する必要があることです。そのため、ショートカットの作成時に、管理者として実行するように指定してください。通常のユーザーとして、これらのレジストリ設定を変更することはできません。

38
Peter Hahndorf