web-dev-qa-db-ja.com

タスクマネージャー(プロセスエクスプローラー)を管理者として実行する

システムのタスクマネージャー(Win7 64)としてSysinternals Process Explorerをインストールしています。サービスとして開始されたものと他のユーザーアカウントで開始されたプロセスのメトリックの半分は、何も表示されないか間違って表示されるため、デフォルトで管理者としてProcess Explorerを実行します。
プロセスに対するアクションの実行に失敗した後、または一部のメトリックがまったく妥当ではない理由(たとえば、ディスクがギガバイトのデータを非常に明確に読み取り/書き込みしているときにI/Oが発生しない)を疑問に思った後、メニューから適切な項目を選択する(システムのバックアップ操作中など)は確かに「機能」しますが、繰り返し発生する大きな不便です。

UACをトリガーしますが、ファイルプロパティの管理者として実行チェックボックスは、アイコンまたはランチャー(Autorunsなど)をクリックして起動するツールで機能します毎回まったくびっくりするようなやり方で。
これは、UACを完全にオフにする以外に避けられないスーパースマートWindowsセキュリティシステムの「機能」であることを理解しています。これは、正直なところ、私の人生で2番目に愚かな設計決定です。

しかし、私が直面しているより大きな問題は、Process Explorerのこのチェックボックスを有効にすると、タスクマネージャーが無効になることです。 Ctrl-shift-ESCは、ビジーカーソルをほんの一瞬だけ表示し、他には何もしません。タスクバーのコンテキストメニューから[タスクマネージャー]を選択すると、この操作を完了するにはより高い特権が必要であることを示すアラートが表示されます(これはまさにユーザーが求めていることです!)。安全な注意シーケンスにより、ロック画面が表示されます。 「タスクマネージャ」をクリックしても何も起こりません。
チェックボックスをオフにすると、Process Explorerが再びシームレスに動作しますが、(当然のことながら)通常のユーザーとして実行されます。

どうやら、Windows関係者は、システムを安全なアテンションシーケンスをバイパスできるポイントにすでに完全に破壊したマルウェアが、管理者としてプログラムを起動できるのではないかと懸念しています。やれやれだぜ。

回避策はありますか両方 Ctrl-shift-ESC(またはアテンションシーケンス)を押したときにProcess Explorerが起動しますおよび管理者として実行していますか?

13
Damon

Windowsブートで自動的に実行

Windowsブートで管理者権限で何かを開始するのはかなり簡単です。タスクをスケジュールするだけです。これは、Windows 8.1のProcess Explorerでどのように行われるかです。 Windows 10でも動作します。

  1. 押す Win+S 検索チャームを開くには、検索フィールドにschedと入力し、Schedule tasksオプションを選択します。

  2. タスクスケジューラウィンドウが開きます。右側のアクションパネルからタスクの作成...をクリックします。

  3. タブで全般好きな名前を入力し、最高の権限で実行下のボックスは、このようになっています。 enter image description here

  4. タブに移動トリガー、プッシュ新規...ボタン、およびセットタスクの開始ログオン時に[〜#〜] ok [〜#〜]: enter image description here

  5. タブでアクション新規...ボタンを押して設定ActiontoStart a program; Program/scriptで、Process Explorer実行可能ファイルへのパスを指定し、最後にAdd arguments(optional)/ tと入力します(これにより、Process Explorerがtに最小化されて起動しますray): enter image description here

基本的にここで完了し、メインで[〜#〜] ok [〜#〜]を押します作成タスクウィンドウ。ログオンすると、プロセスエクスプローラーは最小化され、最高の権限で起動します。残りの設定は好みに合わせて調整できます。たとえば、コンピューターがバッテリーで動作しているときにこのタスクを実行します(ラップトップに便利です)。

手動でオンデマンドで実行

オンデマンドでタスクを実行する必要がある場合は、タスクを開始ステップ4のタスクの作成/変更で設定する必要があります。また、設定タブで、タスクをオンデマンドで実行できるようにするを確認します。残りのオプションは同じでなければなりません。

次に、Windowsデスクトップでショートカットを作成し、そのTargetを設定します。

C:\Windows\System32\schtasks.exe /run /tn "Process Explorer with Administrator Privileges"

(タスク名は、タスクの作成時に設定したものとまったく同じである必要があります)。

必要に応じて、対応するフィールドにショートカットキーを設定できます。参考のためのスクリーンショット:

enter image description here

これで、このショートカットをダブルクリックするか、設定したショートカットキーを使用して、管理者権限でタスクを開始できます。迷惑なUACも干渉しません。

ヒントとして、著者の this answer に感謝します。

10

「タスクマネージャの置き換え」機能を使用する場合は、レジストリの開始コマンドラインに/ eを追加するだけで、管理者として実行できます。

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\taskmgr.exe]
"Debugger"="\"C:\\PROCEXP.EXE\" /e"
4
Trass3r

まず、Process Explorerを指す-> Startupショートカットを作成して、ウィンドウを起動したときに実行されるようにします。

このショートカットのプロパティに移動し、/ tオプションを追加します。これは、Process Explorerに管理者として実行するように指示します。/eオプションも使用します。このオプションは、ツールの作成者が嫌うが、弁護士によって追加を強制されたEULAナグを自動的にバイパスします。だから、私のショートカットは次のようになります:

   "C:\Program Files\SysInternals\procexp.exe" /e /t

最後に、Process Explorerで、[オプション]メニューの[最小化時に非表示]をオンにします。これで、ウィンドウを閉じると、Process Explorerがシステムトレイに表示されなくなります。 Ctrl + Shift + Esc(またはタスクマネージャへのその他のショートカット)は、既存の(管理者)Process Explorerインスタンスを再び開きます。

(実際にプロセスを終了するには、システムトレイアイコンを右クリックするか、プロセスエクスプローラーを使用して強制終了します。退屈ですが、これが必要になることはめったにありません。)

1
Chris