首页
社区
课程
招聘
[求助]请教一个文件系统过滤驱动挂载层次问题
发表于: 2010-2-19 20:19 5376

[求助]请教一个文件系统过滤驱动挂载层次问题

2010-2-19 20:19
5376
编写一个过滤驱动,需要明确这个驱动的挂载层次,也就是要明确这个驱动的设备的设备栈层次.我见磁盘过滤驱动是通过注册表upperfilter键值来表示的,但这个文件系统过滤驱动却没有在inf文件中指示它所处的层次.不过即使这样,安装后是能正常运行的.
由此一问,为什么文件系统过滤驱动不需要明确这个层次?完全由系统来搞定?
;;;
;;; Sfilter
;;;
;;;
;;; Copyright (c) 2000, Microsoft Corporation
;;;

[Version]
signature  	= "$Windows NT$"
Class		= "ActivityMonitor"				;This is determined by the work this filter driver does
ClassGuid 	= {b86dff51-a31e-4bac-b3cf-e8cfe75c9fc2}	;This value is determined by the Class
Provider 	= %Msft%
DriverVer 	= 08/28/2000,1.0.0.1
CatalogFile     = sfilter.cat                                   ; A CatalogFile entry is required for a WHQL signature.
                                                                ; The actual catalog file will be provided by WHQL.  The
                                                                ; catalog file for this sample is not provided for use.
[DestinationDirs]
DefaultDestDir	         = 12
Sfilter.DriverFiles      = 12 			;%windir%\system32\drivers

[SourceDisksNames]
1 = %Disk1%

[SourceDisksFiles]
sfilter.sys = 1

;;
;; Default install sections
;;

[DefaultInstall]
OptionDesc          = %SfilterServiceDesc%
CopyFiles           = Sfilter.DriverFiles

[DefaultInstall.Services]
AddService          = %SfilterServiceName%,,Sfilter.Service
AddReg              = Sfilter.AddRegistry

;;
;; Default uninstall sections
;;

[DefaultUninstall]
DelFiles   = Sfilter.DriverFiles
DelReg     = Sfilter.DelRegistry

[DefaultUninstall.Services]
DelService = Sfilter,0x200		; Flags note to stop service first

;
; Services Section
;

[Sfilter.Service]
DisplayName      = %SfilterServiceName%
Description      = %SfilterServiceDesc%
ServiceBinary    = %12%\Sfilter.sys		;%windir%\system32\drivers\Sfilter.sys
ServiceType      = 2					;SERVICE_FILE_SYSTEM_DRIVER
StartType        = 0					;SERVICE_BOOT_START
ErrorControl     = 1					;SERVICE_ERROR_NORMAL
LoadOrderGroup   = "FSFilter Activity Monitor"
AddReg			 = Sfilter.AddRegistry

;
; Registry Modifications
;

[Sfilter.AddRegistry]
[COLOR="Red"]HKLM,%SfilterRegistry%,%SfilterDebugFlags%,0x00010001 ,0[/COLOR]

[Sfilter.DelRegistry]
HKLM,%SfilterRegistry%,%SfilterDebugFlags%

;
; Copy Files
;

[Sfilter.DriverFiles]
Sfilter.sys

;;
;; String Section
;;

[Strings]
Msft	            = "Microsoft Corporation"
SfilterServiceDesc  = "Sfilter Filter Driver"
SfilterServiceName  = "Sfilter"
SfilterRegistry     = "system\currentcontrolset\services\Sfilter"
SfilterDebugFlags   = "DebugFlags"
Disk1               = "Sfilter Source Media"

[培训]《安卓高级研修班(网课)》月薪三万计划,掌握调试、分析还原ollvm、vmp的方法,定制art虚拟机自动化脱壳的方法

收藏
免费 0
支持
分享
最新回复 (3)
雪    币: 7651
活跃值: (523)
能力值: ( LV9,RANK:610 )
在线值:
发帖
回帖
粉丝
2
它不需要明确,只要有Irp来的时候处理就行了~
2010-2-19 21:59
0
雪    币: 412
活跃值: (30)
能力值: ( LV5,RANK:70 )
在线值:
发帖
回帖
粉丝
3
Class    = "ActivityMonitor"        ;This is determined by the work this filter driver does
LoadOrderGroup   = "FSFilter Activity Monitor"

你要问得应该是这个吧。。
2010-2-19 22:04
0
雪    币: 75
活跃值: (623)
能力值: ( LV6,RANK:90 )
在线值:
发帖
回帖
粉丝
4
被磁盘过滤驱动搞成定向思维了,老盯着注册表键值看,忘了LoadOrderGroup,
多谢楼上两位
Load Order Groups for File System Filter Drivers
http://msdn.microsoft.com/en-us/library/ms790738.aspx
2010-2-19 22:27
0
游客
登录 | 注册 方可回帖
返回
//