阅读:908回复:2
问个磁盘过滤驱动的问题
这个主要是用来对USB设备进行控制的,假设当插入USB设备时已能识别并加了标识语句,我现在要做的是只读USB设备(即对可移动磁盘只读),做法是对读写例程中的写请求过滤掉,
代码如下,if(Irp->MainFunction == IRP_MN_WRITE) {Irp->IoStatus.Status = STATUS_UNSUCCESSFUL; Irp->Information = 0; IoCompleteRequst(Irp,xxx); return STATUS_UNSUCCESSFUL; }但运行这个驱动后,点击可移动磁盘盘符都打不开(不能读),不知为什么? |
|
沙发#
发布于:2005-03-08 16:38
这个主要是用来对USB设备进行控制的,假设当插入USB设备时已能识别并加了标识语句,我现在要做的是只读USB设备(即对可移动磁盘只读),做法是对读写例程中的写请求过滤掉, 你插入U盘,看是否有IRP_MJ_WRITE |
|
|
板凳#
发布于:2005-03-09 08:53
这个主要是用来对USB设备进行控制的,假设当插入USB设备时已能识别并加了标识语句,我现在要做的是只读USB设备(即对可移动磁盘只读),做法是对读写例程中的写请求过滤掉, 将这个驱动改一下,改成监视IRP_MN_WRITE(咦?这里肯定是写错了,是IRP_MJ_WRITE),看看打开盘符时,用IRP_MJ_WRITE来干什么 |
|
|