如题,不知道我说的恰当不恰当。
我的意思是:
比如按F12  就可以实现:先点击鼠标左键,然后再点回车,再点鼠标左键。
大概就是这个样子
大概是用HOOK
但是如何用呢?怎么传递连续的组合按键呢?
用wParam传递的话只能传递一个啊。
问题有点白。
还请大家帮帮小忙。
感激中。。

解决方案 »

  1.   

    keybd_event Function--------------------------------------------------------------------------------The keybd_event function synthesizes a keystroke. The system can use such a synthesized keystroke to generate a WM_KEYUP or WM_KEYDOWN message. The keyboard driver's interrupt handler calls the keybd_event function.Windows NT/2000/XP/Vista:This function has been superseded. Use SendInput instead.
    SyntaxVOID keybd_event(          BYTE bVk,
        BYTE bScan,
        DWORD dwFlags,
        PTR dwExtraInfo
    );
    ParametersbVk
    [in] Specifies a virtual-key code. The code must be a value in the range 1 to 254. For a complete list, see Virtual-Key Codes. 
    bScan
    Specifies a hardware scan code for the key.
    dwFlags
    [in] Specifies various aspects of function operation. This parameter can be one or more of the following values. 
    KEYEVENTF_EXTENDEDKEY
    If specified, the scan code was preceded by a prefix byte having the value 0xE0 (224).
    KEYEVENTF_KEYUP
    If specified, the key is being released. If not specified, the key is being depressed.
    dwExtraInfo
    [in] Specifies an additional value associated with the key stroke. 
    Return ValueThis function has no return value. 
    ResAn application can simulate a press of the PRINTSCRN key in order to obtain a screen snapshot and save it to the clipboard. To do this, call keybd_event with the bVk parameter set to VK_SNAPSHOT. Windows NT/2000/XP: The keybd_event function can toggle the NUM LOCK, CAPS LOCK, and SCROLL LOCK keys. Windows 95/98/Me: The keybd_event function can toggle only the CAPS LOCK and SCROLL LOCK keys. It cannot toggle the NUM LOCK key.The following sample program toggles the NUM LOCK light by using keybd_event() with a virtual key of VK_NUMLOCK. It takes a Boolean value that indicates whether the light should be turned off (FALSE) or on (TRUE). The same technique can be used for the CAPS LOCK key (VK_CAPITAL) and the SCROLL LOCK key (VK_SCROLL).
    Hide Example
       #include <windows.h>   void SetNumLock( BOOL bState )
       {
          BYTE keyState[256];      GetKeyboardState((LPBYTE)&keyState);
          if( (bState && !(keyState[VK_NUMLOCK] & 1)) ||
              (!bState && (keyState[VK_NUMLOCK] & 1)) )
          {
          // Simulate a key press
             keybd_event( VK_NUMLOCK,
                          0x45,
                          KEYEVENTF_EXTENDEDKEY | 0,
                          0 );      // Simulate a key release
             keybd_event( VK_NUMLOCK,
                          0x45,
                          KEYEVENTF_EXTENDEDKEY | KEYEVENTF_KEYUP,
                          0);
          }
       }   void main()
       {
          SetNumLock( TRUE );
       }
    Function InformationMinimum DLL Version user32.dll 
    Header Declared in Winuser.h, include Windows.h 
    Import library User32.lib 
    Minimum operating systems Windows 95, Windows NT 3.1 See AlsoKeyboard Input, GetAsyncKeyState, GetKeyState, keybd_event, MapVirtualKey, SetKeyboardState--------------------------------------------------------------------------------
      

  2.   

    用这个函数可注册热键 RegisterHotKey 可以看MSDN 
      

  3.   

    Hook F12然后6个SendMessage   WM_KEYDOWN WM_KEYUP  WM_LBUTTONDOWN  WM_LBUTTONUP  WM_KEYDOWN WM_KEYUP 
      

  4.   


    LRESULT   CALLBACK   KeyboardProc(   
          int   code,               //   hook   code   
          WPARAM   wParam,     //   virtual-key   code   
          LPARAM   lParam       //   keystroke-message   information   
      )   
    {   
              switch(wParam)   {   
                     case VK_F12:
              {
             //这里发送六次消息,懒得写了
              }
    }用SetWindowHookEx  WH_KEYBORAD