2016-07-25 20 views
0

У меня есть устройство Windows Mobile 6.5 (Honeywell) в сочетании с SOTI. То, что мне нужно реализовать, заключается в том, что если устройство имеет статус akku < 10 процентов, он должен быть выключен. Это та часть, которую я могу сделать с SOTI.Как отправить комбинацию клавиш/Windows Mobile 6.5

Перед этим отключением я должен отправить F12-ключ пять раз. Как я могу это понять? Я знаю, что есть виртуальные коды клавиш (https://msdn.microsoft.com/en-us/library/ms927178.aspx), но я не знаю, как их запускать.

ответ

1

Вы можете использовать функцию keybd_event

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

Чтобы использовать что с .NET см 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 
    ); 

Всегда используйте два вызова с тем же значением ключа, один для ключа dwon и один с KEYEVENTF_KEYUP ,

bScan для кода сканирования обычно может быть 0 или вам нужно найти коды сканирования клавиатуры PS/2 для отправляемого ключа.

+0

Спасибо вам за ответ! Нужно ли мне использовать фреймворки для этого? Или я могу просто скопировать его в файл сценария? – user896692

+0

Это зависит: если C/C++ не требуется дополнительная работа; если .NET вам нужно, чтобы pinvoke, что keybd_event – josef

 Смежные вопросы

  • Нет связанных вопросов^_^