我将首先描述一系列步骤中哪些步骤是有效的。然后我将更改一个步骤,该步骤不应改变最终结果,但确实会改变。
有效的方法:
- 在未加入域的计算机上登录 Windows。使用本地帐户登录。用户是本地管理员,但这并不重要。
- 从 Windows 资源管理器中,选择连接到网络共享。输入 UNC 并选择“使用备用凭据”和“在登录时保持连接”选项
- 对于备用凭据,请输入访问远程共享所需的域用户名和密码。
- 使用 Windows 资源管理器导航到新的驱动器映射并验证您可以查看共享。
- 重新启动计算机并使用与之前相同的凭据(本地用户)登录。
- 启动资源管理器并尝试查看映射驱动器。
这有效。使用最初建立映射时指定的网络凭据再次映射了驱动器。一切正常。
现在,断开所有连接并重新开始测试。这次,请执行所有操作,直到您使用 Windows 资源管理器映射网络驱动器。相反,转到命令提示符(非提升)并使用 NET USE 命令。使用 NET USE 时,在命令行上指定驱动器号、UNC、用户名(域+用户)和 /persistent:yes。但不要在命令行上指定密码。发出命令后,它将提示您输入您指定的域用户的密码。
此时驱动器已连接。您可以执行 DIR,它运行正常。您可以启动 Explorer 并查看共享。一切正常。
现在,重新启动计算机。使用与之前相同的凭据重新登录。转到资源管理器,您将看到驱动器未连接。如果您仍然双击驱动器号,您将收到以下消息:
“将 K: 重新连接到 \kpc\kshare 时发生错误。Microsoft Windows 网络:不允许同一用户使用多个用户名与服务器或共享资源建立多个连接。请断开与服务器或共享资源的所有先前连接,然后重试。此连接尚未恢复”
显然,它认为该驱动器有多个连接。但为什么呢?当它提到“多个用户”时,我认为它指的是域用户(在映射时指定)和本地用户。但我们从未尝试使用本地用户连接到共享。
这台电脑没什么异常。它是全新安装的 Windows 8.1
我也尝试过使用相当于“net use”的 powershell,但得到了同样的结果。
使用 Windows 资源管理器连接网络驱动器与使用“net use”有何不同?
有没有办法使用 Windows 资源管理器自动/脚本映射网络驱动器?
这台计算机上的 UAC 未禁用。我不认为这是 UAC 问题,因为我没有尝试在提升和非提升会话令牌之间共享驱动器映射。
有什么想法吗?
答案1
多年后我发现这可以通过凭证管理器来实现。
使用 cmdkey.exe 添加网络驱动器映射系统使用的凭据以及通过 UNC 访问远程共享。