web-dev-qa-db-ja.com

管理者モードでコマンドプロンプトにマップされたドライブが表示されない

よくわかりませんが、管理者モードでコマンドプロンプトを起動すると、割り当てられたドライブに切り替えることができません。管理者モードになっていなくても実行できます。

単純なものが足りないのですか。

45
AngryHacker

「管理者として」プロンプトを起動すると、起動したときとは異なるユーザーコンテキストで実行されます。

マップされたドライブはユーザー中心なので、そのAdminユーザーコンテキストは(同じ)ドライブを持たず、コマンドウィンドウがAdminsitratorとして開いたら、そのユーザーコンテキストにそれらをマップする必要があります。 Net Use <letter>: \\<server>\<share>を実行することによって。例:

Net Use Z: \\SuperServer\SuperShare

また、レジストリでEnableLinkedConnectionsフラグを有効にして、セッショントークンを共有させることもできます。

この問題を回避するには、EnableLinkedConnectionsレジストリ値を設定します。この値により、Windows VistaとWindows 7は、管理者グループのメンバーに対して、フィルタリングされたアクセストークンと完全な管理者アクセストークンの間でネットワーク接続を共有できます。

これを行うには、HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System\EnableLinkedConnections DWORDフラグを1に設定してから、マシンを再起動します。

Microsoftからの詳細については、次を参照してください。 UACが有効になっていると一部のプログラムがネットワークの場所にアクセスできない

50

これは私が古いWindows Vistaの報告された問題について考えるようにします。

あなたは試すことができます:

  1. Open RegEdit
  2. HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\Systemに行く
  3. EnableLinkedConnectionsという名前のDWORD値を作成し、それを1に設定します。
  4. コンピュータを再起動します
  5. もう一度テストする
13
user2196728

もう1つの回避策として、agesを見つけて、スケジュールされたタスクからNT AUTHORITY\SYSTEMアカウントとしてNet Useを実行します。このアカウントでマッピングされている ドライブは、すべてのユーザーとすべての昇格レベル で表示されているようです。

私はこれをテストしました、そしてそれはNFS共有(それは少し微妙かもしれません)でさえも動作します。システムの起動時に実行するようにスケジュールされたタスクセットを作成し、次のコマンドを指定するだけです。

Net Use //server/share Z: /persistent:no

それは/persistent:yesで一度だけそれを実行するためにおそらく働くかもしれません、しかし私はそれを試していません。もちろん、「もう一度マップする」こともできますが、そのドライブは、異なるコンテキストで実行されているスケジュール済みタスクには表示されません。欠点は、すべての実際のユーザーがそれを見ることですので、マルチユーザー設定にはあまり良くありません。

5
RomanSt