在window mobile 中,锁屏是否有相应的API,我用了SHDeviceLockAndPrompt在程序中没有反应,是不是还有别的要求如果要用这个函数?有谁了解的,谢谢大家了。
锁屏,在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);
这个就是那个API了,不过MS也说了,这个函数即使成功了,也不能保证锁屏成功,或者解锁了。
这个函数还是个特权API。
接4楼,
告知LZ,这个方法在WinCE5.0下,没有反应,目前正在寻求解决办法,LZ及各位大侠若有相关思路、方法,烦请告知!!!
已经解决,用钩子即可,如有意,可去google上搜"键盘钩子"即可。
谢谢大家。