7.4 文件管理
7.4 文件管理
文件管理函數用以滿足用戶擴展開發的需要,包括創建文件、刪除文件、枚舉文件、獲取文件信息、文件讀寫等操作。文件管理系列函數如表19所示:
表19 文件管理系列函數
| 函數名稱 | 功能 |
|---|---|
| SKF_CreateFile | 創建文件 |
| SKF_DeleteFile | 刪除文件 |
| SKF_EnumFiles | 枚舉文件 |
| SKF_GetFileInfo | 獲取文件信息 |
| SKF_ReadFile | 讀文件 |
| SKF_WriteFile | 寫文件 |
7.4.2 創建文件
原型 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.12權限類型。可為各種權限的或值。
ulWriteRights [IN] 文件寫權限,參見6.4.12權限類型。可為各種權限的或值。
返回值 SAR_OK: 成功。
其他: 錯誤碼。
7.4.3 刪除文件
原型 ULONG DEVAPI SKF_DeleteFile (HAPPLICATION hApplication, LPSTR szFileName)
功能描述 刪除指定文件:
文件刪除后,文件中寫入的所有信息將丟失。
文件在設備中的占用的空間將被釋放。
參數 hApplication [IN] 要刪除文件所在的應用句柄。
szFileName [IN] 要刪除文件的名稱。
返回值 SAR_OK: 成功。
其他: 錯誤碼。
7.4.4 枚舉文件
原型 ULONG DEVAPI SKF_EnumFiles (HAPPLICATION hApplication, LPSTR szFileList, ULONG *pulSize)
功能描述 枚舉一個應用下存在的所有文件。
參數 hApplication [IN] 應用句柄。
szFileList [OUT] 返回文件名稱列表,該參數為空,由pulSize返回文件信息所需要的空間大小。每個文件名稱以單個‘\0’結束,以雙‘\0’表示列表的結束。
pulSize [IN,OUT] 輸入時表示數據緩沖區的大小,輸出時表示實際文件名稱列表的長度。
返回值 SAR_OK: 成功。
7.4.5 獲取文件屬性
原型 ULONG DEVAPI SKF_GetFileInfo (HAPPLICATION hApplication, LPSTR szFileName, FILEATTRIBUTE *pFileInfo)
功能描述 獲取文件信息:
獲取應用文件的屬性信息,例如文件的大小、權限等。
參數 hApplication [IN] 文件所在應用的句柄。
szFileName [IN] 文件名稱。
pFileInfo [OUT] 文件信息,指向文件屬性結構的指針。
返回值 SAR_OK: 成功。
7.4.6 讀文件
原型 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: 成功。
其他: 錯誤碼。
7.4.7 寫文件
原型 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: 成功。
其他: 錯誤碼。
GB/T 35291-2017 信息安全技術 智能密碼鑰匙應用接口規范
推薦文章: