如题
怎样实现wince 彻底关机 (关闭电源)
多谢各位
这个问题有点奇怪,我想你的意思是怎么通过软件彻底关机吧?
这个要首先要有硬件的支持,我知道以前一个朋友的做法是多放一个单片机来控制电源。
用setSystemPowerState函数不可以吗
//经本人用多普达D600测试,100%实现真正关机
[System.Runtime.InteropServices.DllImport("coredll")]
public extern static int KernelIoControl(int dwIoControlCode, IntPtr lpInBuf, int nInBufSize, IntPtr lpOutBuf, int nOutBufSize, ref int lpBytesReturned);
[System.Runtime.InteropServices.DllImport("coredll")]
public extern static void keybd_event(byte bVK, byte bScan, byte dwFlags, byte dwExtraInfo);
private void Shutdownbtn_Click(object sender, EventArgs e)//真关机
{
int IOCTL_HAL_SHUTDOWN = 0x1012000;//关机
int bytesReturned = 0;
byte VK_OFF = 0xdf;
byte KEYEVENTF_KEYUP = 2;
KernelIoControl(IOCTL_HAL_SHUTDOWN, IntPtr.Zero, 0, IntPtr.Zero, 0, ref bytesReturned);
keybd_event(VK_OFF, 0, 0, 0);
keybd_event(VK_OFF, 0, KEYEVENTF_KEYUP, 0);//关机
}