PFE_IMPORT_FUNC回调函数 (winbase.h)
与 WriteEncryptedFileRaw 一起使用的应用程序定义回调函数。 系统每次会调用 ImportCallback 一次或多次以检索备份文件的一部分数据。 ImportCallback 按顺序从备份文件读取数据并还原数据,系统继续调用它,直到读取所有备份文件数据。
PFE_IMPORT_FUNC类型定义指向此回调函数的指针。 ImportCallback 是应用程序定义的函数名称的占位符。
语法
PFE_IMPORT_FUNC PfeImportFunc;
DWORD PfeImportFunc(
[in] PBYTE pbData,
[in, optional] PVOID pvCallbackContext,
[in, out] PULONG ulLength
)
{...}
参数
[in] pbData
指向系统提供的缓冲区的指针,该缓冲区将接收要还原的数据块。
[in, optional] pvCallbackContext
指向应用程序定义和分配的上下文块的指针。 应用程序将此指针传递到 WriteEncryptedFileRaw,并将此指针传递到回调函数,以便回调函数可以访问特定于应用程序的数据。 此数据可以是一个结构,可以包含应用程序所需的任何数据,例如包含加密文件的备份副本的文件的句柄。
[in, out] ulLength
在函数条目上,此参数指定系统提供的缓冲区的长度。 回调函数必须写入 pbData 参数指向的缓冲区的字节数不超过这一个字节。
退出时,函数必须将其设置为写入 pbData 的数据的字节数。
返回值
如果函数成功,则必须将返回值设置为 ERROR_SUCCESS,并将 ulLength 参数指向的值设置为复制到 pbData 中的字节数。
到达备份文件的末尾时,将 ulLength 设置为零以告知系统已处理整个文件。
如果函数失败,请将返回值设置为 WinError.h 中定义的非零错误代码。 例如,如果此函数因调用的 API 失败而失败,则可以将返回值设置为 GetLastError 为失败的 API 返回的值。
注解
系统调用 ImportCallback 函数,直到回调函数指示没有更多要还原的数据。 若要指示没有更多要还原的数据,请将 *ulLength 设置为 0,并使用 返回代码ERROR_SUCCESS。 可以使用应用程序定义的上下文块对信息(例如文件句柄和文件中的当前偏移量)进行内部跟踪。
要求
最低受支持的客户端 | Windows XP [仅限桌面应用] |
最低受支持的服务器 | Windows Server 2003 [仅限桌面应用] |
目标平台 | Windows |
标头 | winbase.h (包括 Windows.h) |