wdk 下的 FltRegisterFilter
来源:互联网 发布:春英广场舞服装淘宝网 编辑:程序博客网 时间:2024/06/11 18:41
FltRegisterFilter(
IN PDRIVER_OBJECT Driver,
IN CONST FLT_REGISTRATION *Registration,
OUT PFLT_FILTER *RetFilter
);
1. 参数介绍
1.1 Driver
通过DriverEntry 传递进来的。
1.2 Registration
是一个结构体,有一系列的callback 定义:
typedef struct _FLT_REGISTRATION {
USHORT Size;
USHORT Version;
FLT_REGISTRATION_FLAGS Flags;
CONST FLT_CONTEXT_REGISTRATION *ContextRegistration;
CONST FLT_OPERATION_REGISTRATION *OperationRegistration;
PFLT_FILTER_UNLOAD_CALLBACK FilterUnloadCallback;
PFLT_INSTANCE_SETUP_CALLBACK InstanceSetupCallback;
PFLT_INSTANCE_QUERY_TEARDOWN_CALLBACK InstanceQueryTeardownCallback;
PFLT_INSTANCE_TEARDOWN_CALLBACK InstanceTeardownStartCallback;
PFLT_INSTANCE_TEARDOWN_CALLBACK InstanceTeardownCompleteCallback;
PFLT_GENERATE_FILE_NAME GenerateFileNameCallback;
PFLT_NORMALIZE_NAME_COMPONENT NormalizeNameComponentCallback;
PFLT_NORMALIZE_CONTEXT_CLEANUP NormalizeContextCleanupCallback;
#if FLT_MGR_LONGHORN
PFLT_TRANSACTION_NOTIFICATION_CALLBACK TransactionNotificationCallback;
PFLT_NORMALIZE_NAME_COMPONENT_EX NormalizeNameComponentExCallback;
#endif // FLT_MGR_LONGHORN
} FLT_REGISTRATION, *PFLT_REGISTRATION;
其中callback定义如下:
FLT_REGISTRATION FilterRegistration = {
sizeof( FLT_REGISTRATION ), // Size
FLT_REGISTRATION_VERSION, // Version
0, // Flags
ContextRegistration, // Context
Callbacks, // Operation callbacks
Unload, // Filters unload routine
InstanceSetup, // InstanceSetup routine
InstanceQueryTeardown, // InstanceQueryTeardown routine
InstanceTeardownStart, // InstanceTeardownStart routine
InstanceTeardownComplete, // InstanceTeardownComplete routine
NULL, NULL, NULL // Unused naming support callbacks
};
FltRegisterFilter 中filterRegistration结构体其实就是一系列的callback。
- wdk 下的 FltRegisterFilter
- wdk 框架下的DriverEntry
- wdk在winxp下的开发
- XP环境下的VS2008+WDK配置
- VS2010+WDK(7.x)环境下编译WDK驱动程序的时候如果出现下面的错误
- WDK,DDK下调试
- XP下的VS2008 + WDK +ddkwizard的开发环境配置
- WDK的安装使用
- Win7下vs2010+wdk配置
- WDK
- WDK
- 未装VS的情况下使用eclipse+WDK编译exe
- WDK与DDK的区别
- WDK与DDK的区别
- wdk驱动开发的特点
- WDK 驱动开发环境的搭建
- WDK中出现的特殊代码
- 通过WDK编译驱动出现的错误
- 夜猫:从夜店应用上找到生活中隐藏的刚性需求
- Realtek HD声卡前置面板音频设置教程(前置音频没声音解决办法)
- 字符集及其编码
- 利用ComoBox组合框控件选择串口号
- windows查看文件被那个进程使用
- wdk 下的 FltRegisterFilter
- error: expected class-name before '{' token
- 深入理解Session Cookie
- GitHub使用
- 为什么ListView.setOnItemClickListener、setOnCreateContextMenuListener会无效
- Java中的子类和父类—从内存分析
- MyEclipse6.5 性能提升
- 存储过程
- 自适应网页设计(Responsive Web Design)