这几分钟好像CSDN人气不够啊,可能是时间段没把握好

解决方案 »

  1.   

     procSaveExit:=ExitProc;{这两句是什么意思}
    保存ExitProc的地址。
     ExitProc:=@HotKeyHookExit;
    用自己的过程替换ExitProc的原有过程
    const
      KeyPressMask=$80000000;  {$80000000是什么}我也不知道procedure HotKeyHookExit;{系统在什么时候调用该过程}当系统不使用这个DLL的时候
    begin
      if hNextHookProc<>0 then DisableHotKeyHook;
      ExitProc:=procSaveExit; {这句是什么意思}还原原来的过程。
    end;
      

  2.   

    是不是系统每一次都自动调用该过程,
    if hNextHookProc<>0 then DisableHotKeyHook
    条件决定了是否自动释放钩子,但我不明白的是假如某一时刻系统没有产生消息,那钩子不就
    自动失效了吗
      

  3.   

    ExitProc points to an exit procedure in an application. The exit procedure always gets called as part of a program's termination. ExitProc is only used when generating executable files. Do not use ExitProc within a dynamically loaded package.An exit procedure takes no parameters and must be compiled with a far procedure directive to force it to use the far call model.Note: Because ExitProc is not compatible with packages, it is not recommended that you assign a value to ExitProc. Instead, add code to the finalization section of a unit.
      

  4.   

    KeyPressMask是一个位掩码,用来判断最高位是否为1!!!!!!
      

  5.   


    我如果要将截获的字符转换成为另一个字符应怎样处理,是不是必须用JOURNALPLAYBACK
    钩子,如果要用,怎么在此程序中加入,用了JOURNALPLAYBACK后还要不要原来的钩子,
    一个程序中要放两个钩子的话,结构将要做什么调整,非常期待你的解答,先谢谢了!高手嫌麻烦讲讲思路就行了,结合例子当然更感激了