禁用Windows Mobile 6.5.3中的SmartMinimize Hard按钮/ OK硬键

时间:2013-06-18 12:23:19

标签: windows-mobile compact-framework windows-mobile-6.5

我无法从代码中禁用“确定”硬件按钮。要禁用我正在使用的其他按钮

        private void DisableButton(IntPtr Handle, Int32 code)
        {
            UnregisterFunc1(KeyModifiers.Windows, code);
            RegisterHotKey(Handle, code, KeyModifiers.Windows, code);

        }

其中code = http://msdn.microsoft.com/en-us/library/bb431750.aspx

中的十六进制代码

要禁用OK按钮,我需要禁用“VK_RWIN + VK_F6”,它是2个十六进制代码的组合。有人可以通过上述方法或任何其他方法帮助我实现相同目的。

注意:我使用的是摩托罗拉ES400(如果这有任何帮助)。

2 个答案:

答案 0 :(得分:1)

您在Visual Studio 2008中使用代码运行的模拟器是否有类似的按钮?

如果没有,您可能想尝试使用某种支持ES400设备的Motorola SDK。

这样,您可以双击设计器中的按钮,忽略该输入或写一些东西来绕过它。可能还有一个Key Down事件,您可以编写代码,这样可以更好地工作。

我没有ES400,所以我不能肯定这会起作用。

screenshot

答案 1 :(得分:0)

要捕获所有键,您可以更好(更简单)使用AllKeys()API。

但即使使用AllKeys(TRUE),紧凑框架runtim也不会转发所有击键。一个很好的解决方案是OpenNetCF框架的PreFilterMessage功能。请参阅http://www.hjgode.de/wp/2012/09/20/windows-mobile-cf-how-to-catch-f1-and-f2-in-weh/

上的文章

使用PreFilerMessage,您应该能够捕获VK_RWIN + VK_F6组合。