锁屏

wuhui0617   2009-2-16 09:28 楼主
在window mobile 中,锁屏是否有相应的API,我用了SHDeviceLockAndPrompt在程序中没有反应,是不是还有别的要求如果要用这个函数?有谁了解的,谢谢大家了。

回复评论 (7)

锁屏,在Windows Mobile下,我是采取模拟按键操作实现的:
public class SystemCall
    {
        public const byte VK_NONAME = 0xFC;
        public const byte VK_ESC = 0x1B;
        public const byte VK_F4 = 0x73;
        public const byte VK_APP6 = 0xC6;
        public const byte VK_F22 = 0x85;
        public const byte VK_F16 = 0x7F;
        public const byte VK_OFF = 0x7F;

        public static void SendKey(byte key)
        {
            const int KEYEVENTF_KEYUP = 0x02;
            const int KEYEVENTF_KEYDOWN = 0x00;
            keybd_event(key, 0, KEYEVENTF_KEYDOWN, 0);
            keybd_event(key, 0, KEYEVENTF_KEYUP, 0);

        }
        [DllImport("CoreDll.dll", SetLastError = true)]
        private static extern void keybd_event(byte bVk, byte bScan, int dwFlags, int dwExtraInfo);
    }
锁定屏幕:
SystemCall.SendKey(SystemCall.VK_F22);
点赞  2009-2-16 14:14
这个就是那个API了,不过MS也说了,这个函数即使成功了,也不能保证锁屏成功,或者解锁了。
这个函数还是个特权API。
点赞  2009-2-16 09:41
锁屏是干嘛用的?
点赞  2009-2-16 09:46
那怎样才能使用特权API呢,有没有办法呀?
点赞  2009-2-16 10:45
接4楼,
告知LZ,这个方法在WinCE5.0下,没有反应,目前正在寻求解决办法,LZ及各位大侠若有相关思路、方法,烦请告知!!!
点赞  2009-2-16 14:16
已经解决,用钩子即可,如有意,可去google上搜"键盘钩子"即可。
谢谢大家。
点赞  2009-4-6 14:32
能否简单说说 是怎么实现锁屏的吗?谢谢了
点赞  2009-9-29 22:29
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 京公网安备 11010802033920号
    写回复