apiHook_terminate();\r
//Terminate all in-process subsystems.\r
inProcess_terminate();\r
- //Unregister winEvents for this process\r
- if(inprocWinEventHookID) { \r
- UnhookWinEvent(inprocWinEventHookID);\r
- inprocWinEventHookID=0;\r
- }\r
//Unregister any windows hooks registered so far\r
killRunningWindowsHooks();\r
//Release and close the thread mutex\r
#ifndef NDEBUG\r
Beep(1760,75);\r
#endif\r
- //cleanup some RPC binding handles\r
- RpcBindingFree(&nvdaControllerBindingHandle);\r
- RpcBindingFree(&nvdaControllerInternalBindingHandle);\r
if(lpReserved) { // process is terminating\r
isProcessExiting=true;\r
//If the inproc manager thread was killed off due to process termination then at least unregister hooks\r
apiHook_terminate();\r
//Unregister any current windows hooks\r
killRunningWindowsHooks();\r
+ //Unregister winEvents for this process\r
+ if(inprocWinEventHookID) { \r
+ UnhookWinEvent(inprocWinEventHookID);\r
+ inprocWinEventHookID=0;\r
+ }\r
}\r
} else { //The dll is being unloaded from this process\r
TlsFree(tlsIndex_inThreadInjectionID);\r
+ //cleanup some RPC binding handles\r
+ RpcBindingFree(&nvdaControllerBindingHandle);\r
+ RpcBindingFree(&nvdaControllerInternalBindingHandle);\r
}\r
}\r
return TRUE;\r