본문 바로가기

Programming/API

keybd_event()

keybd_event()는 키보드 메시지를 생성해주는 함수.

필요로 하는 헤더와 함수 원형은 다음과 같다.

#include<Winuser.h>

VOID WINAPI keybd_event( _In_  BYTE bVk, // 가상 키코드 _In_  BYTE bScan,  // 하드웨어 스캔 코드 _In_  DWORD dwFlags, // 동작 지정 Flag _In_  ULONG_PTR dwExtraInfo  // 추가 정보 );

bVk - 사용방법은 가상 키코드 같은경우에는 다음 msdn 페이지에서 모두 잘 알려주고 있다.

Virtual-key code - http://msdn.microsoft.com/ko-kr/library/windows/desktop/dd375731(v=vs.85).aspx

dwFlags - 0을 넣을 경우 keydown, 0x0002를 넣을 경우 keyup

일단 사용할때는 두가지가 주로 입력되어질꺼 같고(아무래도 강제적으로 키입력되었다는 메시지를 넣어주려다 보니 하드웨어 스캔 코드 같은경우에는 쓰이긴 하겠지만 키보드 입력시에 사용하려는 경우는 SendMessage로 WM_KEYDOWN을 보내면 되니까 일단은)

사용시에는

const int KEYUP = 0x0002

keybd_event(VK_CONTROL, 0, 0, 0); //컨트롤 누름

keybd_event(VK_CONTROL, 0, KEYUP, 0);

다음과같을 것 같다.

'Programming > API' 카테고리의 다른 글

_beginthreadex함수  (0) 2013.10.10
스레드 생성 함수  (0) 2013.09.30
그리기 모드  (0) 2013.08.27
펜과 브러시  (0) 2013.08.23
GDI 오브젝트  (0) 2013.08.22