阅读:966回复:5
如何在硬盘上过滤中得知所过滤的硬盘的控制器号和目标号?
小弟近日遇到了一个很奇怪的问题,我编写了一个IDE硬盘的过滤驱动,在装好过滤驱动后,想在过滤驱动里编写一段代码,知道自己是过滤的哪一个硬盘,以便此后的操作。
NTDDK.h里面有一个结构是DISK_CONTROLLER_NUMBER,按照里面的注释它是可以用来获取目标硬盘的控制器号码和主副盘信息,而事实上我测试过了不行。 以前看过lu0写的获取硬盘控制器号码和主副盘信息的代码,在我这儿不实用,因为我是上过滤驱动,只能构造Device Control的IRP向下发送,象那些DFP_***的控制代码好像不能用。 一直很迷惑,不知道是不是直接可以读写寄存器获取这种信息? |
|
|
沙发#
发布于:2003-05-16 10:38
你这个驱动是做什么用途的。
|
|
|
板凳#
发布于:2003-05-16 11:11
中间有一段的作用是对所过滤的硬盘执行Reset和Low Power Mode动作,这需要操作寄存器,但是根据ATAPI规范,操作不同控制器和目标号码上的硬盘所写的寄存器不同,因此要在过滤驱动中获悉它自己过滤的硬盘到底挂在什么位置,请指教。
|
|
|
地板#
发布于:2003-05-17 08:09
对不起,我也试过。好象不行,我再查查资料,如果你做出来,告诉我。
|
|
|
地下室#
发布于:2003-05-18 18:32
有没有哪位老大会阿,请指教,这个问题已经问倒很多人了,呵呵
|
|
|
5楼#
发布于:2003-05-19 18:16
如果有app,可以帮忙检测
|
|
|