【发布时间】:2015-11-04 08:37:03
【问题描述】:
在我的 C# 应用程序中,我使用 MessageFilter 作为全局键挂钩 as suggested by T Perquin.
这是我当前的代码:
class KeyboardMessageFilter : IMessageFilter
{
public bool PreFilterMessage(ref Message m)
{
if (m.Msg == ((int)Helper.WindowsMessages.WM_KEYDOWN))
{
switch ((int)m.WParam)
{
case (int)Keys.Escape:
// Do Something
return true;
case (int)Keys.Right:
// Do Something
return true;
case (int)Keys.Left:
// Do Something
return true;
}
}
return false;
}
}
当我尝试编译和运行(以确保语法正确)时,我收到以下错误:The name 'Helper' does not exist in the current context。
“Helper”到底是什么?如何解决此错误?
【问题讨论】:
-
Helper似乎是一个命名空间,其中定义了某些 Windows 消息的常量。使用这样一个通用名称,它不太可能成为标准模块 - 您必须创建自己的,或者只需在本地声明 WM_KEYDOWN,如果这就是您所需要的。 -
@500-InternalServerError 我想使用全局挂钩,以便我的应用程序在最小化时可以使用快捷方式。我将如何将此代码(如果可能的话)用于全局挂钩?
标签: c# compiler-errors syntax-error