Wince编程--(文件管理、存储设备、重启)

本文主要介绍基于WINCE平台下eVC进行应用程序开发时会常常用到的一些功能函数,各个函数的各项参数的具体定义可以根据函数名称在eVC的帮助文件直接获取,文中就不再一一详细说明。

一、文件和目录的管理

WINCE支持了很多有用的函数来进行文件和目录的管理。常用的有以下这些函数:

1) 复制文件:

BOOL CopyFile( LPCTSTR lpExistingFileName, LPCTSTR lpNewFileName, BOOL bFaillfExists );

2) 删除文件:

BOOL DeletFile( LPCTSTR lpFileName );

3)创建目录:

BOOL CreateDirectory( LPCTSTR lpPathName,LPSECURITY_ATTRIBUTES lpSecurityAttributes);

4) 删除目录:

BOOL RemoveDirectory( LPCTSTR lpPathName );

二、获取存储设备的大小信息

在WINCE下已经没有了驱动器名的概念,文件存储设备都是在WINCE的根目录下中以目录的形式出现,可以调用以下函数来获取存储设备的总的大小和空闲空间的信息:

BOOL GetDiskFreeSpaceEx( LPCWSTR lpDirectoryName,

                                             PULARGE_INTEGER lpFreeBytesAvailableToCaller,

                                             PULARGE_INTEGER lpTotalNumberOfBytes,

                                             PULARGE_INTEGER lpTotalNumberOfFreeBytes );

三、重启系统函数

调用函数KernelIoControl( … )可以实现WINCE系统重新启动, 定义的代码如下:

#include <winioctl.h>

#define IOCTL_HAL_REBOOT CTL_CODE(FILE_DEVICE_HAL, 15, METHOD_BUFFERED, FILE_ANY_ACCESS)

extern 'C' __declspec(dllimport) BOOL KernelIoControl( DWORD dwIoControlCode,

                                                                                          LPVOID lpInBuf,

                                                                                          DWORD nInBufSize,

                                                                                          LPVOID lpOutBuf,

                                                                                          DWORD nOutBufSize,

                                                                                          LPDWORD Returned);

程序需要重启时,只需调用该函数即可,如:

KernelIoControl( IOCTL_HAL_REBOOT, NULL, 0, NULL, 0, NULL );


posted on 2010-10-15 13:23  遥望大海,云卷云舒  阅读(1319)  评论(0编辑  收藏  举报