//声明部分//设置钩子 
        [DllImport("user32.dll")]
        private static extern int SetWindowsHookEx(int idHook, HookHandle lpfn, IntPtr hInstance, int threadId);private const int WH_CALLWNDPROC = 4;//消息
private HookMsgHandle _MsgHookProcedure;
private delegate int HookMsgHandle(int nCode, int wParam, IntPtr lParam);//使用部分public void InstallHook(ProcessMsgHandle clientMethod, string ProcessName)
        {
            _clientMsgMethod = clientMethod;            if (_hHookValue == 0)
            {
                _MsgHookProcedure = new HookMsgHandle(OnHookMsgProc);                 _hookWindowPtr = GetModuleHandle(Process.GetCurrentProcess().MainModule.ModuleName);                _hHookValue = SetWindowsHookEx(
                    WH_CALLWNDPROC,
                    _MsgHookProcedure,
                    _hookWindowPtr,
                    0);//  这句崩溃了                //如果设置钩子失败. 
                if (_hHookValue == 0) UninstallHook();
            }
        }运行到:SetWindowsHookEx  我系统崩溃了提示我是不是我委托用的不对?第二个参数错误了?和WH_CALLWNDPROC这个不匹配?公司要我做的东西,必须要用钩子才能实现。。但是,不是钩键盘,是钩类似WM_SETTEXT,WM_GETTEXT