CreateFile函数是Windows API中的一个函数,用于创建或打开一个文件或设备。它的原型如下:
HANDLE CreateFile(
LPCTSTR lpFileName,
DWORD dwDesiredAccess,
DWORD dwShareMode,
LPSECURITY_ATTRIBUTES lpSecurityAttributes,
DWORD dwCreationDisposition,
DWORD dwFlagsAndAttributes,
HANDLE hTemplateFile
);
参数说明如下:
- lpFileName:要创建或打开的文件或设备的名称。
- dwDesiredAccess:对文件或设备的访问权限,可以是GENERIC_READ、GENERIC_WRITE、GENERIC_EXECUTE等常量,或者自定义的访问权限。
- dwShareMode:共享模式,指定其他进程可以如何访问文件或设备,可以是FILE_SHARE_READ、FILE_SHARE_WRITE、FILE_SHARE_DELETE等常量。
- lpSecurityAttributes:安全属性,指定文件或设备的安全描述符。
- dwCreationDisposition:创建或打开文件的方式,可以是CREATE_NEW、CREATE_ALWAYS、OPEN_EXISTING、OPEN_ALWAYS等常量。
- dwFlagsAndAttributes:文件或设备的属性和标志,可以是FILE_ATTRIBUTE_NORMAL、FILE_FLAG_WRITE_THROUGH、FILE_FLAG_NO_BUFFERING等常量,也可以是自定义的属性和标志的组合。
- hTemplateFile:一个可选的文件句柄,指定用于创建文件的模板文件。
CreateFile函数成功时返回一个文件句柄,用于后续对文件或设备的操作;失败时返回INVALID_HANDLE_VALUE。使用完文件句柄时,需要调用CloseHandle函数关闭文件。
CreateFile函数可以用于创建、打开、读取、写入、复制、移动和删除文件,也可以用于打开和关闭设备等操作。根据传入的参数不同,CreateFile函数可以实现不同的功能。