的函數:
void keybd_event(BYTE bVirturalKey,BYTE bScanCode,
DWORD dwFlags,DWORD dwExtraInfo)
ctrl 鍵是 VK_CONTROL bScanCode = 0x9d
shift鍵是 VK_SHIFT 0xaa
撳鍵是 0,0
鍵彈上來是:KEYEVENTF_KEYUP,0
例如simu_keyboard.c程序,模擬 Alt-PrintScreen,把屏幕圖像放入剪切板。
頭文件:
#include <Windows.h>
#include <Winuser.h>
#include <stdio.h>
#include <stdlib.h>
/* ----------------------------------
simulation of Alt-PrintScreen
to get current Window image in clipboard
* -----------------------------------*/
void snapwin_2_clipboard()
{
keybd_event(VK_LMENU,0xA4,0,0); // 撳 Alt
keybd_event(VK_SNAPSHOT,0x2C,0,0); // 撳 PrintScreen
keybd_event(VK_SNAPSHOT,0x2C,KEYEVENTF_KEYUP,0); // 鍵彈上
keybd_event(VK_LMENU,0xA4,KEYEVENTF_KEYUP,0); // 鍵彈上
}
void main()
{
(void) snapwin_2_clipboard();
exit(0);
}
編譯命令: cl simu_keyboard.c user32.lib
運行:simu_keyboard.exe
用任何圖像編輯軟件中的Edit-paste 可貼剪切板裏的內容了。