| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 974 人关注过本帖
标题:硬盘信息显示问题求助
只看楼主 加入收藏
shuyoufeng
Rank: 1
等 级:新手上路
帖 子:11
专家分:0
注 册:2008-7-3
收藏
 问题点数:0 回复次数:5 
硬盘信息显示问题求助
现在想用VB做一个显示硬盘分区信息的软件,想法是:
在一个工程的窗体中加一个按钮和一个listview控件,现在想在listview控件中显示如下图的硬盘信息,不知道能不实现,我试过,用WMI可以实现我要的这些功能,但是WMI在PE中运行出错,现在在想能不能用API的方式实现,经过一番苦苦百度,最后成功用API实现了在listview中显示硬盘的盘符,卷标,分区大小,接口类型,分区类型这些信息,可是显示硬盘的哪个分区是激活(也就是磁盘管理中的系统)分区的功能搞不定了,网上说用CreateFile这个API函数先读取硬盘的MBR和DPT信息,然后找到标志硬盘分区是不是活动的那个标志信息来判断,可是,当我读取到标志活动分区的信息后又不知道盘符了,也就是说,活动分区的标志信息是在硬盘的物理信息中的,而分区盘符是在逻辑信息中的,它们两怎么关联就搞不清楚了。

现在在想能不能用盘符的方式读取硬盘的活动分区,因为CreateFile这个函数要读取分区是不是活动的,就必须读取硬盘的物理信息,也就是它的句柄应该是:"\\.\PHYSICALDRIVE0" ,如果用"\\.\C:"这个句柄就读不到活动分区的标志信息,不知道有没有其它的API函数可以实现这个功能。

还有个想法就是,如果能用API函数实现判断一个分区是哪块硬盘(有多块硬盘的情况下)的哪个分区,是主分区还是扩展分区,那判断这个分区是不是活动分区应该也就不难了,现在的问题不知道VB怎么实现判断一个分区是哪块硬盘的哪个分区。


小弟刚学VB,水平很菜,还请各位大哥不吝赐教,最好能说的详细一些,要不小弟只会看得一头雾水,在此谢过了!

[[it] 本帖最后由 shuyoufeng 于 2008-10-18 12:05 编辑 [/it]]

zrSx6sziLTM=_K5LCcegjhpBv.jpg (17.16 KB)
图片附件: 游客没有浏览图片的权限,请 登录注册
搜索更多相关主题的帖子: 硬盘 
2008-10-18 11:55
shuyoufeng
Rank: 1
等 级:新手上路
帖 子:11
专家分:0
注 册:2008-7-3
收藏
得分:0 
怎么没人回答呢
2008-10-18 13:44
Joforn
Rank: 6Rank: 6
等 级:贵宾
威 望:23
帖 子:1242
专家分:122
注 册:2007-1-2
收藏
得分:0 
"\\.\PHYSICALDRIVE0"

VB QQ群:47715789
2008-10-18 13:57
shuyoufeng
Rank: 1
等 级:新手上路
帖 子:11
专家分:0
注 册:2008-7-3
收藏
得分:0 
怎么没人知道吗?
2008-10-19 00:03
Joforn
Rank: 6Rank: 6
等 级:贵宾
威 望:23
帖 子:1242
专家分:122
注 册:2007-1-2
收藏
得分:0 
首先,枚举出所有的硬盘。
然后分析出每一个硬盘的分区就行了。

VB QQ群:47715789
2008-10-19 12:29
shuyoufeng
Rank: 1
等 级:新手上路
帖 子:11
专家分:0
注 册:2008-7-3
收藏
得分:0 
枚举出所有的硬盘我会,可是怎么分析每一个硬盘的分区就不会了
2008-10-20 12:18
快速回复:硬盘信息显示问题求助
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.029657 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved