2012-09-24 3 views
2

.NET에서 C# 응용 프로그램을 작성 중입니다. 응용 프로그램에 2 개의 텍스트 상자가 있습니다. 하나는 사용자 입력 용이고 다른 하나는 USB 스캐너 입력 용으로 사용됩니다. 키보드 나 스캐너 (스캐너가 바코드의 문자를 보내고 끝에 입력)를 통해 입력 장치를 감지하는 방법이 있습니까? 이를 달성 할 수있는 방법이 있습니까? 지금까지 나는 텍스트 상자에 그것을 잡으려고 시도했습니다 onKeyDownonKeyPress하지만 성공하지 못했습니다. 나는 캐릭터 만 얻는다.입력 장치 유형 감지 .NET

나는 반사에서 어딘가를 봐야한다고 생각하지만, 3 일이 지나도 아무것도 찾지 못했습니다.

덕분에, 미하일

+0

메시지를 확인해보십시오 ('WndProc'에서 로그를 덤프하거나 Spy ++를 사용하십시오) - 거기에 정보가있을 수 있습니까? DirectInput을 사용하지 않고 키보드 인터페이스는 단순히 "키보드"일 수 있습니다. –

+2

필자는 스캐너 모델에이를 수 있다고 생각합니다. 이러한 감지 기능을 지원하는 기능을 지원할 수도 있고 키보드처럼 윈도우에 스스로를 어리석게 표시 할 수도 있습니다. 특정 문서를 확인해야합니다. –

답변

2

바코드 스캐너는 일반적으로 인간은 일반적으로 10 밀리 초마다 정도를 입력 할 수있는 것보다 훨씬 더 빨리 문자를 공급한다. 우아하지만 효과적인 솔루션은 OnKeyDown 또는 OnKeyPress이며 마지막 이벤트가 잠시 전에 발생한 경우이를 바코드 스캐너에서 입력 한 문자 시퀀스로 간주합니다.

+0

그것은 가능한 해결책이지만 좀 더 벙어리 사용자로 보호하기를 원합니다. 고맙습니다 – mihail