2016-07-25 3 views
0

저는 SOTI와 함께 Windows Mobile 6.5 장치 (Honeywell)를 가지고 있습니다. 구현할 필요가있는 것은 장치의 상태가 < 인 경우, 장치를 종료해야한다는 것입니다. 그것이 내가 SOTI로 할 수있는 부분입니다.키 조합을 보내는 방법/Windows Mobile 6.5

이 종료 전에 F12 키를 다섯 번 보내야합니다. 내가 어떻게 깨달을 수 있니? 가상 키 코드 (https://msdn.microsoft.com/en-us/library/ms927178.aspx)가 있지만 그 방법을 알지 못합니다.

답변

1

당신은 pinvoke

using System.Runtime.InteropServices; 
    ... 
    public const uint KEYEVENTF_KEYUP = 2; 

    [DllImport("coredll.dll", EntryPoint = "keybd_event", SetLastError = true)] 
    public static extern void keybd_event 
    (
     byte bVk, 
     byte bScan, 
     int dwFlags, 
     int dwExtraInfo 
    ); 

항상 KEYEVENTF_KEYUP와 같은 키 값과 키 dwon 하나 하나를 두 통화 사용을 참조

keybd_event(VK_F12, 0, 0, 0); 
    keybd_event(VK_F12, 0, KEYEVENTF_KEYUP, 0); 

는 .NET에서 그것을 사용하려면 keybd_event 기능을 사용할 수 있습니다 .

스캔 코드의 bScan은 일반적으로 0이거나 전송하는 키에 대한 PS/2 키보드 스캔 코드를 찾아야합니다.

+0

답변 해 주셔서 감사합니다. 이를 위해 프레임 워크를 사용해야합니까? 아니면 그냥 스크립트 파일에 붙여 넣기 복사 할 수 있습니까? – user896692

+0

다릅니다 : C/C++에서 추가 작업이 필요하지 않은 경우; .NET의 경우 keybd_event를 pinvoke해야합니다. – josef

관련 문제