c# mouse_event卡死的问题

写 了一个鼠标钩子,按下鼠标启动一个mouse_event事件,但是运行几次以后就卡死。

    private void MouseHookInit()
    {
        mh = new MouseHook();
        mh.SetHook();
        mh.MouseDownEvent += mh_MouseDownEvent;
        mh.MouseUpEvent += mh_MouseUpEvent;

        //mh.MouseMoveEvent += mh_MouseMoveEvent;
    }
    const int MOUSEEVENTF_MOVE = 0x0001;
    [System.Runtime.InteropServices.DllImport("user32")]
    private static extern int mouse_event(int dwFlags, int dx, int dy, int cButtons, int dwExtraInfo);
    private void mh_MouseDownEvent(object sender, MouseEventArgs e)
    {
        Console.WriteLine("11");
        try
        {
            mouse_event(MOUSEEVENTF_MOVE, 0, 10, 0, 0);

        }
        catch(Exception ed)
        {
            Console.WriteLine(ed);
        }




    }

1个回答

你在鼠标事件里调用mouse_event,会触发新的事件,而出发了事件,你又调用mouse_event,如此这般陷入无限循环。

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问
相关内容推荐