PortClass音频
+ -

PortClass InitializeAdapterDriver函数

2021-12-09 179 303

InitializeAdapterDriver函数是PortClass驱动DriverEntry调用的第一个函数,也是惟一的函数。该函数的功能和其它的MINI小端口驱动一样,都是初始化相应的MIN小端口驱动框架的“结构体”,并使用系统提供的类驱动的回调函数来初始化相应的IRP回调函数,而我们函数的第三个函数AddDevice应该初始化为如下:

DriverObject->DriverExtension->AddDevice = AddDevice;

用于创建FDO,并且实现FDO扩展单元的初始化和将FOD使用函数IoAttachDeviceToDeviceStack到PDO上。

这里我们提供一个大概代码,帮助大家理解相关的调用关系:

PORTCLASSAPI
NTSTATUS
NTAPI
PcInitializeAdapterDriver
(
    IN      PDRIVER_OBJECT      DriverObject,
    IN      PUNICODE_STRING     RegistryPathName,
    IN      PDRIVER_ADD_DEVICE  AddDevice
)
{
    DriverObject->DriverExtension->AddDevice           = AddDevice;
    DriverObject->DriverUnload                         = DriverUnload;

     DriverObject->MajorFunction[IRP_MJ_XX]            = DispatchPnp;

 return STATUS_SUCCESS;
}

0 篇笔记 写笔记

PortClass InitializeAdapterDriver函数
InitializeAdapterDriver函数是PortClass驱动DriverEntry调用的第一个函数,也是惟一的函数。该函数的功能和其它的MINI小端口驱动一样,都是初始化相应的MIN小端口驱动框架的“结构体”,并使用系统提供的类驱动的回调函数来初始化相应的IRP回调函数,而我们函数的第......
作者信息
我爱内核
Windows驱动开发,网站开发
好好学习,天天向上。
取消
感谢您的支持,我会继续努力的!
扫码支持
扫码打赏,你说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

您的支持,是我们前进的动力!