Как выполнить холодную и теплую загрузку с помощью кода C # на Windows-Mobile 5.0? - PullRequest
4 голосов
/ 18 апреля 2011

Как выполнить «холодную» и «горячую» загрузку с помощью C # для Windows Mobile 5.0?

а есть ли какая-нибудь программа, которая может запускать командную строку на windows-mobile 5.0?

заранее спасибо

1 Ответ

5 голосов
/ 18 апреля 2011
[DllImport("coredll.dll")]

        public static extern int KernelIoControl(int dwIoControlCode, IntPtr lpInBuf, int nInBufSize, IntPtr lpOutBuf, int nOutBufSize,ref int lpBytesReturned);

        private int CTL_CODE(int DeviceType, int Func, int Method, int Access)

        {           

           return (DeviceType << 16) | (Access << 14) | (Func << 2) | Method;

        }
        private int ResetPocketPC()

        {
            const int FILE_DEVICE_HAL = 0x101;

            const int METHOD_BUFFERED = 0;

            const int FILE_ANY_ACCESS = 0;

            int bytesReturned = 0;

            int IOCTL_HAL_REBOOT;

            IOCTL_HAL_REBOOT = CTL_CODE(FILE_DEVICE_HAL, 15, METHOD_BUFFERED, FILE_ANY_ACCESS);

            return KernelIoControl(IOCTL_HAL_REBOOT, IntPtr.Zero, 0, IntPtr.Zero, 0, ref bytesReturned);

        }

Дополнительную информацию и информацию о том, как использовать код, можно получить по адресу CodeProject . На Блоге Psion Cummunity есть еще одна замечательная статья, которую я настоятельно рекомендую вам тоже проверить.

...