Пример #1
0
        // Token: 0x06000117 RID: 279 RVA: 0x0000C43C File Offset: 0x0000A63C
        private static IntPtr HookProc(IntPtr hWnd, uint msg, IntPtr wParam, IntPtr lParam)
        {
            IntPtr returnCode = KeyboardInput.CallWindowProc(KeyboardInput.prevWndProc, hWnd, msg, wParam, lParam);

            if (msg <= 135u)
            {
                if (msg != 81u)
                {
                    if (msg == 135u)
                    {
                        returnCode = (IntPtr)(returnCode.ToInt32() | 4);
                    }
                }
                else
                {
                    KeyboardInput.ImmAssociateContext(hWnd, KeyboardInput.hIMC);
                    returnCode = (IntPtr)1;
                }
            }
            else
            {
                switch (msg)
                {
                case 256u:
                    if (KeyboardInput.KeyDown != null)
                    {
                        KeyboardInput.KeyDown(null, new KeyEventArgs((Keys)((int)wParam)));
                    }
                    break;

                case 257u:
                    if (KeyboardInput.KeyUp != null)
                    {
                        KeyboardInput.KeyUp(null, new KeyEventArgs((Keys)((int)wParam)));
                    }
                    break;

                case 258u:
                    if (KeyboardInput.CharEntered != null)
                    {
                        KeyboardInput.CharEntered(null, new CharacterEventArgs((char)((int)wParam), lParam.ToInt32()));
                    }
                    break;

                default:
                    if (msg == 641u)
                    {
                        if (wParam.ToInt32() == 1)
                        {
                            KeyboardInput.ImmAssociateContext(hWnd, KeyboardInput.hIMC);
                        }
                    }
                    break;
                }
            }
            return(returnCode);
        }
Пример #2
0
        private static IntPtr HookProc(IntPtr hWnd, uint msg, IntPtr wParam, IntPtr lParam)
        {
            IntPtr returnCode = CallWindowProc(prevWndProc, hWnd, msg, wParam, lParam);

            switch (msg)
            {
            case 135u:
                returnCode = (IntPtr)(returnCode.ToInt32() | 4);
                break;

            case 256u:
                if (KeyboardInput.KeyDown != null)
                {
                    KeyboardInput.KeyDown(null, new KeyEventArgs((Keys)(int)wParam));
                }
                break;

            case 257u:
                if (KeyboardInput.KeyUp != null)
                {
                    KeyboardInput.KeyUp(null, new KeyEventArgs((Keys)(int)wParam));
                }
                break;

            case 258u:
                if (KeyboardInput.CharEntered != null)
                {
                    KeyboardInput.CharEntered(null, new CharacterEventArgs((char)(int)wParam, lParam.ToInt32()));
                }
                break;

            case 641u:
                if (wParam.ToInt32() == 1)
                {
                    ImmAssociateContext(hWnd, hIMC);
                }
                break;

            case 81u:
                ImmAssociateContext(hWnd, hIMC);
                returnCode = (IntPtr)1;
                break;
            }
            return(returnCode);
        }
Пример #3
0
        private static IntPtr HookProc(IntPtr hWnd, uint msg, IntPtr wParam, IntPtr lParam)
        {
            IntPtr num = KeyboardInput.CallWindowProc(KeyboardInput.prevWndProc, hWnd, msg, wParam, lParam);

            if (msg <= 135U)
            {
                if ((int)msg != 81)
                {
                    if ((int)msg == 135)
                    {
                        num = (IntPtr)(num.ToInt32() | 4);
                    }
                }
                else
                {
                    KeyboardInput.ImmAssociateContext(hWnd, KeyboardInput.hIMC);
                    num = (IntPtr)1;
                }
            }
            else
            {
                switch (msg)
                {
                case 256:
                    // ISSUE: reference to a compiler-generated field
                    if (KeyboardInput.KeyDown != null)
                    {
                        // ISSUE: reference to a compiler-generated field
                        KeyboardInput.KeyDown((object)null, new KeyEventArgs((Keys)(int)wParam));
                        break;
                    }
                    break;

                case 257:
                    // ISSUE: reference to a compiler-generated field
                    if (KeyboardInput.KeyUp != null)
                    {
                        // ISSUE: reference to a compiler-generated field
                        KeyboardInput.KeyUp((object)null, new KeyEventArgs((Keys)(int)wParam));
                        break;
                    }
                    break;

                case 258:
                    // ISSUE: reference to a compiler-generated field
                    if (KeyboardInput.CharEntered != null)
                    {
                        // ISSUE: reference to a compiler-generated field
                        KeyboardInput.CharEntered((object)null, new CharacterEventArgs((char)(int)wParam, lParam.ToInt32()));
                        break;
                    }
                    break;

                case 641:
                    if (wParam.ToInt32() == 1)
                    {
                        KeyboardInput.ImmAssociateContext(hWnd, KeyboardInput.hIMC);
                        break;
                    }
                    break;
                }
            }
            return(num);
        }