阅读:1262回复:5
关于event
1,在APP中CreateEvent
2,DeviceIoControl传给Drive 3,APP中WaitforsingleObject 4,Drive里ObReferenceObjectByHandle 5,驱动里KeSetEvent后系统就死翘翘。 为什么? |
|
最新喜欢:![]() |
沙发#
发布于:2002-12-06 21:59
1,在APP中CreateEvent ULONG *IoBuffer=(ULONG*)(pIrp->AssociatedIrp.SystemBuffer); EventHandle=(HANDLE)IoBuffer[0]; Status=ObReferenceObjectByHandle(EventHandle,GENERIC_READ|GENERIC_WRITE,NULL,KernelMode,(VOID**)&YourEvent,NULL); if(Status==STATUS_SUCCESS) { KeClearEvent(YourEvent); } 在DpcForIsr中: KeSetEvent(YourEvent); |
|
板凳#
发布于:2002-12-06 16:19
ObReferenceObjectByHandle 需要使用吗?
你在那个 irql 运行 kesetevent? |
|
|
地板#
发布于:2002-12-06 16:18
ObReferenceObjectByHandle 需要使用吗?
|
|
|
地下室#
发布于:2002-12-06 12:57
是KeSetEvent
ObReferenceObjectByHandle应用后生成的OBJECT作为KeSetEvent 的参数 |
|
5楼#
发布于:2002-12-06 08:52
怎么死的?你肯定是因为KeSetEvent造成的吗?是不是句柄传错了?
|
|
|