有人对原来写的那篇文章提出了更深的问题,就是在不知道网络驱动器盘符的情况下,如何进行删除。起始要获得驱动器的盘符也不是件很复杂的事情,只要向WMI进行查询即可,大致的方法如下。
首先,要在工程中引用Windows.Management。
然后,就是用WMI进行查询,代码如下:
public enum DRIVE_TYPE:int
{
REMOVABLE = 2,
LOCALDISK = 3,
NETDRIVE = 4,
CDROM = 5,
}
public ArrayList GetAllNetDriveName()
{
//get drive collection
string strQuery = string.Format( "SELECT * From Win32_LogicalDisk WHERE DriveType = {0}", (int)( DRIVE_TYPE.NETDRIVE) );
ManagementObjectSearcher query = new ManagementObjectSearcher(strQuery);
ManagementObjectCollection queryCollection = query.Get();
ArrayList arrNetDriveName = new ArrayList();
foreach ( ManagementObject mo in queryCollection)
arrNetDriveName.Add( mo["Name"].ToString() );
return arrNetDriveName;
}
网络驱动器的盘符已经获得,那么删除,就可以调用原来的方法,参见:
http://blog.csdn.net/knight94/archive/2006/03/21/631309.aspx
Trackback: http://tb.blog.csdn.net/TrackBack.aspx?PostId=645367