我遇到了UMDF驱动程序从EVT_WDF_TIMER回调函数检索存储在设备注册表中的数据的问题。这样的回调函数只有WDFTIMER对象作为它的唯一参数。为了能够访问UMDF中的注册表,WdfDeviceOpenRegistryKey需要一个指向WDFDEVICE对象的指针。在调用回调函数之前,WdfTimerCreate创建了我的WDFTimer,它在计时器过期后调用回调函数。我还提供了适当的WDF_OBJECT_ATTRIBUTES,其中一个属性是我将WDFDEVICE对象分配到其中的WDFOBJECT ParentObject。
现在,我希望可以检索我在WDF_OBJECT_ATTRIBUTES中添加的WDFDEVICE对象,但似乎无法从WDFTIMER参数访问它。我想知道,有没有什么方法可以从EVT_WDF_TIMER回调函数中检索指向我的WDFDEVICE的指针?
发布于 2020-11-11 19:54:08
您可以使用WdfTimerGetParentObject 检索WDFOBJECT。
https://stackoverflow.com/questions/64785767
复制相似问题