驱动级的键盘钩子源码 好东西非常好 } pKeyboradDeviceExtension->bThreadTerminate=TRUE; KeReleaseSemaphore(&pKeyboradDeviceExtension->semQueue,0,1,TRUE); KeWaitForSingleObject(pKeyboradDeviceExtension->pThreadObject, Executive,KernelMode,FALSE,NULL); ZwClose(pKeyboradDeviceExtension->hLogFile); IoDeleteDevice(