在 Win7 上使用不同用户映射和重新映射网络驱动器
Posted
技术标签:
【中文标题】在 Win7 上使用不同用户映射和重新映射网络驱动器【英文标题】:Mapping and Remapping Network Drives with Different Users on Win7 【发布时间】:2014-09-07 11:59:54 【问题描述】:我目前正在尝试开发包含网络共享的服务器的自动客户端测试。但是,我需要通过连接多个用户来验证其安全性,尽管我一次只需要连接一个用户。
目前,我正在使用以下命令进行连接:
net use z: \\server_ip\share password /user:doman\username
我正在使用以下命令断开连接:
net use z: /delete /y
此外,我通过简单地检查该资源是否未在net use
命令中列出来验证该资源不再连接。
但是,如果我断开连接然后尝试以其他用户身份重新连接,我会遇到
System Error 1219 has occurred.
Multiple connections to a server or shared resource by the same user, using more
than one user name, are not allowed. Disconnect all previous connections to the
server or shared resource and try again.
我做了一些研究和解决方案,例如映射两个不同的驱动器,一个使用 ip,另一个使用服务器名称是不可接受的,因为测试客户端不一定知道服务器名称。重新启动计算机也是不可接受的,因为这会中断自动化测试。最后,我无法使用测试客户端修改任何服务器设置,因此没有 Samba 别名。
我认为问题可能是缓存的凭据,但是当我在控制面板中检查凭据管理器时,没有列出任何内容。
有什么方法可以让 Windows 完全断开与服务器共享的连接和/或让它忘记缓存的凭据?还是我做错了什么?
感谢您的任何建议/帮助!
编辑:我应该澄清一下,任何解决方案都必须以编程方式完成,因为这是一个自动化测试,应该能够解决这个问题。我正在用 Python 编写,但我愿意使用任何可以在 Windows 上运行的语言的解决方案。
【问题讨论】:
【参考方案1】:问题已解决。虽然我不知道具体是怎么做的,但以下资源提供了一些可能的修复方法,其中许多我尝试并发现不成功,但也许它们的某种组合最终起作用了。我希望如果其他用户遇到这个问题,这个线程将对他们有用。
http://social.technet.microsoft.com/Forums/windows/en-US/ced8eab6-87e2-4d20-9d18-7aaf5e9713a3/windows-7-clear-cached-credentials?forum=w7itpronetworking
【讨论】:
- 导航到 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon - 将 CachedLogonsCount 的值更改为 0 - 重新启动对我有用。即使它在尝试新连接之前显示所有连接都已断开,但新连接总是会失败。更改此注册表项并重新启动后,它现在可以工作了。【参考方案2】:输入net use
然后查看所有连接是连接/断开的,并删除所有列出的连接:
net use <n/w name> /d
【讨论】:
欢迎来到 Stack Overflow,@Akshat59 !虽然此代码可能会回答问题,但提供有关其解决问题的方式和/或原因的附加上下文将提高答案的长期价值。 这是行不通的,除非你使用 net use * /d /y 但这并不理想,特别是如果你不想改变任何其他连接。以上是关于在 Win7 上使用不同用户映射和重新映射网络驱动器的主要内容,如果未能解决你的问题,请参考以下文章
主机为ubuntu12.04,虚拟机为windows7旗舰版,在win7中映射网络驱动器如何实现不输用户名和密码?