Though I didn't use SendInput()
, keybd_event()
works perfectly with GCC/Mingw32.
I answered my own question, and leave it in order to provide some idea to whom have the same problem.
// Event
#define KEYEVENTF_KEYDOWN 0x0000
// ALT + SPACE
#define SCAN_CODE_ALT 0x38
#define SCAN_CODE_SPACE 0x39
keybd_event ( VK_MENU , SCAN_CODE_ALT , KEYEVENTF_KEYDOWN, 0);
keybd_event ( VK_SPACE , SCAN_CODE_SPACE, KEYEVENTF_KEYDOWN, 0);
keybd_event ( VK_SPACE , SCAN_CODE_SPACE, KEYEVENTF_KEYUP , 0);
keybd_event ( VK_MENU , SCAN_CODE_ALT , KEYEVENTF_KEYUP , 0);
// UP * 2
#define SCAN_CODE_UP 0x48
keybd_event ( VK_UP , SCAN_CODE_UP , KEYEVENTF_KEYDOWN, 0);
keybd_event ( VK_UP , SCAN_CODE_UP , KEYEVENTF_KEYUP , 0);
keybd_event ( VK_UP , SCAN_CODE_UP , KEYEVENTF_KEYDOWN, 0);
keybd_event ( VK_UP , SCAN_CODE_UP , KEYEVENTF_KEYUP , 0);
// Enter
#define SCAN_CODE_ENTER 0x1C
keybd_event ( VK_RETURN, SCAN_CODE_ENTER, KEYEVENTF_KEYUP , 0);
keybd_event ( VK_RETURN, SCAN_CODE_ENTER, KEYEVENTF_KEYDOWN, 0);