2

Windows PC (「MYPC」など) には、複数のドライブがマップされています。によるとnet use

>net use
New connections will be remembered.


Status       Local     Remote                    Network

-------------------------------------------------------------------------------
OK           X:        \\BLAHBLAH1\e$            Microsoft Windows Network
OK           Y:        \\BLAHBLAH2\e$            Microsoft Windows Network
OK           Z:        \\BLAHBLAH3\s$            Microsoft Windows Network
The command completed successfully.

しかし、その PC でこの Powershell を実行すると、次のようになります。

$disks = Get-WmiObject -Class Win32_MappedLogicalDisk -Filter "DeviceID='Z:'"
foreach($disk in $disks)
{
      [Console]::WriteLine("DEBUG: " + $disk.Name + " is " + $disk.ProviderName );
}

戻り値:

DEBUG: \\MYPC\root\cimv2:Win32_MappedLogicalDisk.DeviceID="Z:",SessionID="4491554321" is \\OTHERPC\c$\
DEBUG: \\MYPC\root\cimv2:Win32_MappedLogicalDisk.DeviceID="Z:",SessionID="3129225404" is \\BLAHBLAH3\s$
DEBUG: \\MYPC\root\cimv2:Win32_MappedLogicalDisk.DeviceID="Z:",SessionID="5884378361" is \\BLAHBLAH3\s$

これらの他の Z マップされたドライブはどこから来たのですか? それらはどのようにして同じドライブ文字を占有しますか? 安全に削除できるかどうか、また削除する場合はどのようにすればよいですか?

MYPC は実際にはサーバーであるため、マップされたすべてのドライブを消去することはできません (通常はそうします)。

これがマップされたドライブが他のユーザーから表示されることが原因である場合、Powershell を変更して、ログインしているユーザーのみに絞り込むにはどうすればよいですか (正確にどのnet useように動作するように思われるか)。

4

1 に答える 1

1

デバイスの可用性またはステータス プロパティをテストしようとしましたか? これは、ローカルにログオンしているユーザーが使用するネット ドライブで発生する可能

があり ます。ターミナル サーバーを実行しているため、Win32_LogonSession クラスをチェックして、providerName に表示されるセッション ID に関する詳細情報を取得します。

于 2012-11-21T20:02:28.117 に答える