我正在编写一个程序来监视远程目录,并使用Windows API:WNetAddConnection。 我用它来把远程目录映射到Z:通过使用指定的用户/密码。
当我把这个程序放到工作环境后,有人使用explorer位置“\ 192.168.XX \ somedir”login我监视的同一个目录,这使得我的程序无法连接到这个目录,所以我不得不要求这个人不要做这件事情,但我不能强迫他们不要。
所以我想知道是否有办法断开所有其他的连接,或者说是要防止他们做这个事情,有谁知道怎么做?
顺便说一下,我不是Windows的专家,我不知道Windowsnetworking的细节(或者这个错误的真正含义),谁能告诉我,Windowsnetworking的文档在哪里?
丑陋的选择:
你可以解析“net use”的输出,然后断开你不喜欢的连接,使用“net use / d”
( WNetCancelConnection2似乎是net use / d使用的API)
WNetCancelConnection2
但这不是对人们最友善的事情。
不确定的API,但网络会话/删除将断开所有打开的会话共享。
你可以按照下面的步骤来做:1,运行命令删除所有的网络用户和密码,顺序是:rundll32.exe shell32.dll,Control_RunDLL keymgr.dll 2,删除网络用户的所有信息内存使用命令: net use * /delete /y
或者您可以创建一个bat文件来获得以下信息:
@echo off rundll32.exe shell32.dll,Control_RunDLL keymgr.dll net use * /delete /y net use * /delete /y net use * /delete /y net use * /delete /y net use * /delete /y net use * /delete /y net use net use net use net use * /delete /y net use * /delete /y net use * /delete /y net use * /delete /y net use * /delete /y net use * /delete /y