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)

另请参阅

CloseEncryptedFileRaw

ExportCallback

文件加密

文件管理函数

OpenEncryptedFileRaw

ReadEncryptedFileRaw

WriteEncryptedFileRaw