我在下面的Powershell脚本中检查远程PC上的映射驱动器。 有些PC给出了所需的结果,但有些则没有。
Get-WmiObject Win32_MappedLogicalDisk -computer HW059 | select name, providername
我使用的帐户在所有PC上都拥有相同的管理员权限,因此我认为问题不是由于用户权限引起的。
我想知道是否需要启动任何服务/与脚本相关? 我检查了WMI服务是否在所有PC上运行。
抱歉,我是脚本新手。 有人可以帮忙吗? 电源外壳结果
映射驱动器是用户会话的功能,默认情况下它们在系统上不存在。即使所有用户都映射了相同的磁盘(即 S: 映射到 \\server\share),如果没有登录用户,S: 也不会存在。
请参阅MSDN的备注(您是下面描述中的用户A)
为此类返回的实例如下所示,假设用户 A 正在枚举这些实例:
提供程序在该计算机上查找用户 A 的登录会话:如果有一个(且只有一个)此类登录会话,则提供程序返回该会话的映射驱动器。如果计算机上有多个用户 A 的会话,则不会返回映射的驱动器实例(因为提供程序没有合理的方法来决定使用哪个会话)。
如果没有用户 A 的会话正在运行,并且存在本地登录的用户 B:
如果用户 B 只有一个会话,则提供程序将模拟 A 并返回用户 B 的映射驱动器。此案例支持支持人员想要查看本地登录用户的实例的方案。但是,是否返回实例取决于控制面板管理工具中的本地安全策略设置。如果将以下策略设置为"对象创建者",则不会返回映射的驱动器实例,即使 A 是管理员组的成员:"系统对象:由管理员组成员创建的对象的默认所有者。" 同样,如果计算机上运行了多个用户 B 的会话, 然后,提供程序无法决定使用哪个。在这种情况下,不会返回映射的驱动器实例。