使用 Storport 驱动程序的函数角色类型来声明函数
若要使 SDV 能够分析 Storport 驱动程序,必须使用为 Storport 定义的函数角色类型声明来声明函数。 函数角色类型在 Storport.h 中定义。
必须通过指定相应的角色类型来声明 Storport 驱动程序中的每个回调函数。
下面的代码示例演示 DriverIntialize 回调函数的函数角色类型声明。 函数角色类型为sp_DRIVER_INITIALIZE。
sp_DRIVER_INITIALIZE DriverEntry;
如果回调函数具有函数原型声明,则必须将函数原型替换为函数角色类型声明。
函数角色类型 | Storport 例程 |
---|---|
sp_DRIVER_INITIALIZE | DriverEntry |
HW_INITIALIZE | HwStorInitialize |
HW_BUILDIO | HwStorBuildIo |
HW_STARTIO | HwStorStartIo |
HW_INTERRUPT | HwStorInterrupt |
HW_TIMER | HwStorTimer |
HW_FIND_ADAPTER | HwStorFindAdapter |
HW_RESET_BUS | HwStorResetBus |
HW_ADAPTER_CONTROL | HwStorAdapterControl |
HW_PASSIVE_INITIALIZE_ROUTINE | HwStorPassiveInitializeRoutine |
HW_DPC_ROUTINE | HwStorDpcRoutine |
HW_FREE_ADAPTER_RESOURCES | HwFreeAdapterResources VIRTUAL_HW_INITIALIZATION_DATA 结构的一部分。 |
HW_PROCESS_SERVICE_REQUEST | VIRTUAL_HW_INITIALIZATION_DATA 结构的 HwProcessServiceRequest 部分。 |
HW_COMPLETE_SERVICE_IRP | VIRTUAL_HW_INITIALIZATION_DATA 结构的 HwCompleteServiceIrp 部分。 |
HW_INITIALIZE_TRACING | VIRTUAL_HW_INITIALIZATION_DATA 结构的 HwInitializeTracing 部分。 |
HW_CLEANUP_TRACING | VIRTUAL_HW_INITIALIZATION_DATA 结构的 HwCleanupTracing 部分。 |
VIRTUAL_HW_FIND_ADAPTER | VIRTUAL_HW_INITIALIZATION_DATA 结构的 HwFindAdapter 部分。 |
HW_MESSAGE_SIGNALED_INTERRUPT_ROUTINE | HwMSInterruptRoutine |