(ac4fc6f29) Fixed EventInput crashing in 32-bit windows builds

This commit is contained in:
Joonas Rikkonen
2019-05-06 11:28:13 +03:00
parent 0bd876e17d
commit 5999a66681
8 changed files with 117 additions and 253 deletions
@@ -155,6 +155,9 @@ namespace EventInput
return SetWindowLongPtr(hWnd, nIndex, dwNewLong);
}
[DllImport("user32.dll", CharSet = CharSet.Unicode)]
static extern IntPtr SetWindowLong(IntPtr hWnd, int nIndex, IntPtr dwNewLong);
[DllImport("user32.dll", CharSet = CharSet.Unicode)]
static extern IntPtr SetWindowLongPtr(IntPtr hWnd, int nIndex, IntPtr dwNewLong);
#endif
@@ -173,8 +176,8 @@ namespace EventInput
#if WINDOWS
hookProcDelegate = HookProc;
prevWndProc = SetWindowLongPtr(window.Handle, GWL_WNDPROC,
Marshal.GetFunctionPointerForDelegate(hookProcDelegate));
prevWndProc = TrySetWindowLong(window.Handle, GWL_WNDPROC,
Marshal.GetFunctionPointerForDelegate(hookProcDelegate));
hIMC = ImmGetContext(window.Handle);
#else