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