\r
UINT PollIPCMessage(LPVOID param)\r
{\r
- HANDLE hPipe = CreateNamedPipe(IPC_PIPE, PIPE_ACCESS_DUPLEX, PIPE_TYPE_MESSAGE | PIPE_READMODE_MESSAGE, 1, 512, 512, 0, NULL);\r
+ HANDLE hPipe = CreateNamedPipe(XKEYMACS64_PIPE, PIPE_ACCESS_DUPLEX, PIPE_TYPE_MESSAGE | PIPE_READMODE_MESSAGE, 1, 512, 512, 0, NULL);\r
if (hPipe == INVALID_HANDLE_VALUE)\r
return 1;\r
for (; ;) {\r
DWORD read;\r
if (!ReadFile(hPipe, &msg, sizeof(msg), &read, NULL) || read != sizeof(msg)) \r
break;\r
- DWORD written, nul = 0;\r
- if (!WriteFile(hPipe, &nul, sizeof(DWORD), &written, NULL) || written != sizeof(DWORD)\r
- || !FlushFileBuffers(hPipe) || !DisconnectNamedPipe(hPipe))\r
- break;\r
switch (msg)\r
{\r
- case XKEYMACS_EXIT:\r
+ case IPC64_EXIT:\r
goto exit;\r
break;\r
- case XKEYMACS_RELOAD:\r
+ case IPC64_RELOAD:\r
CXkeymacsDll::LoadConfig();\r
break;\r
- case XKEYMACS_RESET:\r
+ case IPC64_RESET:\r
CXkeymacsDll::ResetHooks();\r
break;\r
+ case IPC64_DISABLE:\r
+ CXkeymacsDll::SetHookStateDirect(false);\r
+ break;\r
+ case IPC64_ENABLE:\r
+ CXkeymacsDll::SetHookStateDirect(true);\r
+ break;\r
}\r
+ DWORD written, ack = 0;\r
+ if (!WriteFile(hPipe, &ack, sizeof(DWORD), &written, NULL) || written != sizeof(DWORD)\r
+ || !FlushFileBuffers(hPipe) || !DisconnectNamedPipe(hPipe))\r
+ break;\r
}\r
exit:\r
CloseHandle(hPipe);\r