DDKReg_GetIsrInfo的简介

Developing a Device Driver > Device Driver Development Helper Libraries > Registry Helper Reference > Registry Helper Functions

This function populates a DDKISRINFO structure with information from the registry. If you specify an interrupt service routine (ISR) DLL, you must also specify a handler entry point and an interrupt request (IRQ).

DWORD WINAPI DDKReg_GetIsrInfo(
  HKEY hk, 
  PDDKISRINFO pii
);
Parameters

hk

[in] Handle to a registry key.

pii

[out] Pointer to a DDKISRINFO structure.

The following table shows the registry values this function retrieves.

Registry value

Registry type

Data structure member

Default value if the registry value is not present

Irq

REG_DWORD

dwIrq

IRQ_UNSPECIFIED

Sysintr

REG_DWORD

dwSysintr

SYSINTR_NOP

IsrDll

REG_SZ

szIsrDll

DDKReg_GetIsrInfo returns ERROR_INVALID_DATA.

IsrHandler

REG_SZ

szIsrHandler

DDKReg_GetIsrInfo returns ERROR_INVALID_DATA.

Return Values

The following table shows the return values for this function.

Value

Description

ERROR_SUCCESS

Indicates that the DDKISRINFO structure was populated successfully.

ERROR_INVALID_PARAMETER

Indicates a problem with the populated DDKISRINFO structure.

ERROR_INVALID_DATA

Indicates that a registry value has an unexpected type, or that device window address and length lists do not have the same length.

For example, when the operating system (OS) has configured the IsrHandler and the IsrDll values in the registry, but the Irq value has not been configured, the function fails and returns ERROR_INVALID_DATA.

Any other return value

Indicates a return code defined in Winerror.h.

Remarks

When the DDKReg_GetIsrInfo function reads the registry, it does the following:

1.       If an IsrDll entry is configured, it ensures that there is an IsrHandler entry configured.

2.       If there is no IsrDll entry nor an IsrHandler entry, the function returns ERROR_SUCCESS.

3.       If there is an IsrHandler entry, but no IsrDll entry, the function returns ERROR_INVALID_DATA.

4.       If there are both IsrDll and IsrHandler entries, the function checks that there must be a valid Irq entry configured.

 

补充:可以在注册表中指定ISR名称及所在外部DLL、IRQ和SYSINTR的值,通过此函数来读取。增使用的灵活性

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值