在Win7上使用不同用户映射和重新映射网络驱动器

时间:2014-07-16 19:58:57

标签: windows windows-7 network-programming smb

我目前正在尝试开发包含网络共享的服务器的自动客户端测试。但是,我需要通过连接多个用户来验证其安全性,尽管我一次只需要连接一个用户。

目前,我正在使用以下命令进行连接:

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上运行的任何语言的解决方案。

2 个答案:

答案 0 :(得分:1)

问题已经解决。虽然我不确切知道它做了什么,但是下面的资源提供了一些可能的修复,其中许多我试过并发现不成功,但也许它们的某些组合最终起作用。我希望如果其他用户遇到这个问题,这个线程将对他们有用。

http://social.technet.microsoft.com/Forums/windows/en-US/ced8eab6-87e2-4d20-9d18-7aaf5e9713a3/windows-7-clear-cached-credentials?forum=w7itpronetworking

答案 1 :(得分:0)

输入net use

然后查看所有连接的连接/断开连接,并删除所有列出的连接:

net use <n/w name> /d