add: SetWindowsHookEx(WH_MOUSE, UnhideMouseHook, NULL, GetCurrentThreadId());
context: void wxInitialize(HINSTANCE hInstance){  wxCommonInit();  wxWindowInit();  InitFafa(hInstance);  if (!gaugeInit(hInstance))    wxFatalError("Cannot initalize Gauge library");  wxSTD_FRAME_ICON = LoadIcon(hInstance, "wxSTD_FRAME");  {    RegisterMyClass(hInstance,		    CS_HREDRAW | CS_VREDRAW,		    wxSTD_FRAME_ICON,		    (HBRUSH)(COLOR_BTNFACE+1),		    wxFrameClassName);    RegisterMyClass(hInstance,		    CS_HREDRAW | CS_VREDRAW,		    wxSTD_FRAME_ICON,		    (HBRUSH)(COLOR_APPWORKSPACE+1),		    wxMDIFrameClassName);    RegisterMyClass(hInstance,		    CS_HREDRAW | CS_VREDRAW,		    wxSTD_FRAME_ICON,		    (HBRUSH)(COLOR_BTNFACE+1),		    wxMDIChildFrameClassName);    RegisterMyClass(hInstance,		    CS_HREDRAW | CS_VREDRAW,		    NULL,		    (HBRUSH)(COLOR_BTNFACE+1),		    wxPanelClassName);    // Use CS_OWNDC to avoid messing about restoring the context    // for every graphic operation.    RegisterMyClass(hInstance,		    CS_HREDRAW | CS_VREDRAW | CS_OWNDC | CS_DBLCLKS,		    NULL,		    (HBRUSH)(COLOR_WINDOW+1),		    wxCanvasClassName);    RegisterNoCursor(hInstance, "BUTTON", "wxBUTTON", L"BUTTON", L"wxBUTTON");    RegisterNoCursor(hInstance, "COMBOBOX", "wxCOMBOBOX", L"COMBOBOX", L"wxCOMBOBOX");    RegisterNoCursor(hInstance, "LISTBOX", "wxLISTBOX", L"LISTBOX", L"wxLISTBOX");    RegisterNoCursor(hInstance, "EDIT", "wxEDIT", L"EDIT", L"wxEDIT");    RegisterNoCursor(hInstance, "STATIC", "wxSTATIC", L"STATIC", L"wxSTATIC");  }  wxREGGLOB(wxWinHandleList);  wxREGGLOB(wxSliderList);  wxWinHandleList = new wxNonlockingHashTable();  wxSliderList = new wxNonlockingHashTable();  }