我正在使用WNetEnumResource枚举所有networking共享连接和WNetCancelConnection2closures它们。 然后我使用WNetUseConnection连接到使用分立凭据的共享。 这个过程全天发生多次。
我遇到的问题是,在我得到第一个stream程之后:
发生系统错误1219。
不允许同一用户使用多个用户名连接到服务器或共享资源。 断开与服务器或共享资源的所有连接,然后重试。
即使枚举表示没有当前连接,也会发生这种情况。
我的问题是:为什么? 为什么我得到这个错误? 与服务器的authentication连接是否仍然被caching? 我可以枚举这些身份validation令牌吗? Kerberos的? LSA?
在这个项目上,我一直没能find最小的信息立足点。 任何帮助表示赞赏!
我试图记住我们几年前遇到网络备份程序时遇到的这个问题。
我确定解决方案涉及使用WNetAddConnection2
或WNetAddConnection3
而不是WNetUseConnection
。 我认为通过标志CONNECT_CRED_RESET
应该照顾这一点,但我不是绝对肯定的。
请注意, CONNECT_CRED_RESET
只记录了WNetAddConnection2
而不是WNetAddConnection3
,虽然MSDN表示两者之间的唯一区别是对话窗口的拥有者的hWnd
参数 – 我会尝试与WNetAddConnection2
,只有它的工作, WNetAddConnection3
实验。 你甚至可以让它与WNetUseConnection
一起工作!
确保注意到 CONNECT_CRED_RESET
在其他标志上的依赖关系 。