2012-12-06 3 views
0

내 질문은 키보드 이벤트의 WIN32 API와 관련이 있습니다.wchar_t ~ keybd_event 보내기

VOID WINAPI keybd_event(
    _In_ BYTE bVk, 
    _In_ BYTE bScan, 
    _In_ DWORD dwFlags, 
    _In_ ULONG_PTR dwExtraInfo 
); 

이 방법은 키 값에 대해 BYTE를 허용합니다. 만큼 그 숯불 일이 괜찮지 만 wchar_t에 대한 작동하지 않는, 분명히 데이터 형식의 차이 때문입니다. wchar_t 데이터 유형이나이 단어를 화면에 보낼 수있는 다른 변환에 대해 노출 된 메소드가 있습니까?

감사

답변

1

당신은 char 자체가이 기능을 보내지 마십시오, 당신은 그것을 Virtual Key Codes 세트를 보내, 이들은 자신의 범위에 제한됩니다. 따라서 wchar_t 유형을 보내려는 시도는 실제로 의미가 없습니다.

또한 당신은 MSDN documentation for this function이 메모를 볼 수 있습니다 :이 기능은 대체되었습니다

참고. 대신 SendInput을 사용하십시오.

대신 SendInput을 사용하는 것이 나을 것입니다.

+0

'SendInput'은 아무 것도 변경하지 않습니다. 당신은 모든 동일한 정보를 보냅니다. 가상 키 코드와 모두. 가장 큰 차이점은'SendInput'이 사용하는 것이 더 까다 롭다는 것입니다. 'keybd_event'를 사용해도 아무런 문제가 없습니다. –

관련 문제