У меня есть несколько приложений, которые я хочу запустить, когда пользователь нажимает определенные клавиши на клавиатуре, и для этого я хочу использовать метод WndProc.
Я добился успеха в этом в приложении WinForms.Я хочу разработать Службу Windows для достижения этой цели.Я получаю следующие ошибки при попытке использовать код в службе Windows.
- RegHotKeys.CreateParams: не найдено подходящего метода для переопределения
- RegHotKeys.WndProc (ref Message): нетнайден подходящий метод для переопределения
- ServiceBase не содержит определения для WndProc
- ServiceBase не содержит определения для CreateParams
Ниже приведен фрагмент кода:
protected override void WndProc(ref Message keyPressed)
{
Keys keyData = ((Keys)((int)((long)keyPressed.WParam))) | Control.ModifierKeys;
if (keyPressed.LParam.ToInt32() == hotKey1)
{
//ACTION 1
}
else if (keyPressed.LParam.ToInt32() == hotKey2)
{
//ACTION 2
}
else if (keyPressed.LParam.ToInt32() == hotKey3)
{
//ACTION 3
}
else if (keyPressed.LParam.ToInt32() == hotKey4)
{
//ACTION 4
}
base.WndProc(ref keyPressed);
}
protected override CreateParams CreateParams
{
get
{
var cp = base.CreateParams;
cp.ExStyle |= 0x80; // Turn on WS_EX_TOOLWINDOW
return cp;
}
}
Так может кто-нибудь предложить, что может быть возможным решением этой проблемы, пожалуйста?