获取所有逻辑磁盘目录
逻辑 获取 目录 所有 磁盘
2023-09-14 09:00:20 时间
实现效果:
知识运用:
Directory类的GetLogicalDrives方法 //检索计算机上的逻辑分区
public static string[] GetLogicalDrives()
GetDirectories方法 和GetFiles方法
实现代码:
public void GetListViewItem(string path,ImageList imagelist,ListView lv) { lv.Items.Clear(); SHFILEINFO shfi = new SHFILEINFO(); try { string[] dirs = Directory.GetDirectories(path); string[] files = Directory.GetFiles(path); for (int i = 0; i < dirs.Length; i++) { string[] info=new string[4]; DirectoryInfo dir = new DirectoryInfo(dirs[i]); if (!(dir.Name == "RECYCLER" || dir.Name == "RECYCLED" || dir.Name == "Recycled" ||dir.Name == "System Volume Information")) { SHGetFileInfo(dirs[i], (uint)0x80, ref shfi, (uint)System.Runtime.InteropServices.Marshal.SizeOf(shfi), (uint)(0x100 | 0x400)); imagelist.Images.Add(dir.Name,(Icon)Icon.FromHandle(shfi.hIcon).Clone()); info[0] = dir.Name; info[1] = ""; info[2] = "文件夹"; info[3] = dir.LastAccessTime.ToString(); ListViewItem item = new ListViewItem(info,dir.Name); lv.Items.Add(item); } } for (int i = 0; i < files.Length; i++) { string[] info = new string[4]; FileInfo fi = new FileInfo(files[i]); string Newtype=fi.Extension.ToLower(); if (!(Newtype == "sys" || Newtype == "ini" || Newtype == "bin" || Newtype == "log" || Newtype == "com" || Newtype == "bat" || Newtype == "db")) { SHGetFileInfo(files[i], (uint)0x80, ref shfi, (uint)System.Runtime.InteropServices.Marshal.SizeOf(shfi), (uint)(0x100 | 0x400)); imagelist.Images.Add(fi.Name,(Icon)Icon.FromHandle(shfi.hIcon)); info[0] = fi.Name; info[1] = fi.Length.ToString(); info[2] = fi.Extension.ToString(); info[3] = fi.LastAccessTime.ToString(); ListViewItem item = new ListViewItem(info,fi.Name); lv.Items.Add(item); } } } catch {} }
相关文章
- 关于Free自由协议增发逻辑技术开发详细丨Free模式系统开发项目方案讲解
- 【说站】python逻辑运算符and的使用
- 【说站】mysql逻辑备份有什么特点
- 深度:解析泰山众筹系统项目开发逻辑技术分析详细
- Linux创建逻辑卷,合并多块数据盘。
- 【Jetpack】DataBinding 架构组件 ④ ( 使用 @BindingAdapter 注解为布局组件绑定自定义逻辑 | 网络图片加载 | 本地图片加载 )
- JSP JSTL <c:otherwise>标签:指定默认处理逻辑标签
- Oracle数据库逻辑备份实践指南(oracle逻辑备份)
- 借助 Oracle 实现逻辑取反(oracle逻辑取反)
- 代码审计之逻辑上传漏洞挖掘
- 结构深入理解Oracle的逻辑和物理结构(oracle逻辑和物理)
- SQL Server表的数据转移逻辑(sqlserver表转移)
- 深入了解MySQL探索其三层逻辑结构(mysql三层逻辑结构)
- Redis优化之道理解运行逻辑(redis运行逻辑)