概述
文件管理函数用以满足用户扩展开发的需要,包括创建文件、删除文件、枚举文件、获取文件信息、文件读写等操作。文件管理系列函数如下表所示:
表:文件管理系列函数
函数名称 |
功能 |
SKF_CreateFile |
创建文件 |
SKF_DeleteFile |
删除文件 |
SKF_EnumFiles |
枚举文件 |
SKF_GetFileInfo |
获取文件信息 |
SKF_ReadFile |
读文件 |
SKF_WriteFile |
写文件 |
1、创建文件
函数原型:ULONG DEVAPI SKF_CreateFile (HAPPLICATION hApplication, LPSTR szFileName, ULONG ulFileSize, ULONG ulReadRights,ULONG ulWriteRights)
功能描述:创建文件时要指定文件的名称,大小,以及文件的读写权限。
参 数:hApplication:[IN] 应用句柄。
szFileName:[IN] 文件名称,长度不得大于32个字节。
ulFileSize:[IN] 文件大小。
ulReadRights:[IN] 文件读权限,参见6.4.9 权限类型。可为各种权限的或值。
ulWriteRights:[IN] 文件写权限,参见6.4.9权限类型。可为各种权限的或值。
返 回 值:SAR_OK:成功;其他:错误码。
备 注:创建文件需要应用指定的创建文件权限。
2、删除指定文件
函数原型:ULONG DEVAPI SKF_DeleteFile (HAPPLICATION hApplication, LPSTR szFileName)
功能描述:文件删除后,文件中写入的所有信息将丢失。文件在设备中的占用的空间将被释放。
参 数:hApplication:[IN] 要删除文件所在的应用句柄。
szFileName:[IN] 要删除文件的名称。
返 回 值:SAR_OK:成功;其他:错误码。
备 注:权限要求:删除一个文件应具有对该文件的创建权限。
3、枚举文件
函数原型:ULONG DEVAPI SKF_EnumFiles (HAPPLICATION hApplication, LPSTR szFileList, ULONG *pulSize)
功能描述:枚举一个应用下存在的所有文件。
参 数:hApplication:[IN] 应用句柄。
szFileList:[OUT] 返回文件名称列表,该参数为空,由pulSize返回文件信息所需要的空间大小。每个文件名称以单个‘\0’结束,以双‘\0’表示列表的结束。
pulSize:[IN,OUT] 输入时表示数据缓冲区的大小,输出时表示实际文件名称列表的长度。
返 回 值:SAR_OK:成功;其他:错误码。
4、获取文件属性
函数原型:ULONG DEVAPI SKF_GetFileInfo (HAPPLICATION hApplication, LPSTR szFileName, FILEATTRIBUTE *pFileInfo)
功能描述:获取文件信息:获取应用文件的属性信息,例如文件的大小、权限等。
参 数:hApplication:[IN] 文件所在应用的句柄。
szFileName:[IN] 文件名称。
pFileInfo:
[OUT] 文件信息,指向文件属性结构的指针。
返 回 值:SAR_OK:成功;其他:错误码。
5、读文件
函数原型:ULONG DEVAPI SKF_ReadFile (HAPPLICATION hApplication, LPSTR szFileName, ULONG ulOffset, ULONG ulSize, BYTE * pbOutData, ULONG *pulOutLen)
功能描述:读取文件内容。
参 数:hApplication:[IN] 应用句柄。
szFileName:[IN] 文件名。
ulOffset:[IN] 文件读取偏移位置。
ulSize:[IN] 要读取的长度。
pbOutData:[OUT] 返回数据的缓冲区。
pulOutLen:[IN,OUT]输入时表示给出的缓冲区大小;输出时表示实际读取返回的数据大小。
返 回 值:SAR_OK:成功;其他:错误码。
备 注:权限要求:须具备对该文件的读权限。
6、写文件
函数原型:ULONG DEVAPI SKF_WriteFile (HAPPLICATION hApplication, LPSTR szFileName, ULONG ulOffset, BYTE *pbData, ULONG ulSize)
功能描述:写数据到文件中。
参 数:hApplication:[IN] 应用句柄。
szFileName:[IN] 文件名。
ulOffset:[IN] 写入文件的偏移量。
pbData:[IN] 写入数据缓冲区。
ulSize:[IN] 写入数据的大小。
返 回 值:SAR_OK:成功;其他:错误码。
备 注:权限要求:须具备该文件的写权限。