CertSrvBackupOpenFileW 函数 (certbcli.h)
CertSrvBackupOpenFile 函数打开一个文件进行备份。
语法
HRESULT CERTBCLI_API CertSrvBackupOpenFileW(
[in] HCSBC hbc,
[in] WCHAR const *pwszAttachmentName,
[in] DWORD cbReadHintSize,
[out] LARGE_INTEGER *pliFileSize
);
参数
[in] hbc
证书服务备份上下文的句柄。
[in] pwszAttachmentName
要打开以进行备份的文件名。 此文件名将从 通过 CertSrvBackupGetBackupLogs 或 CertSrvBackupGetDatabaseNames 生成的列表中进行分析。 请注意, CertSrvBackupGetBackupLogs 和 CertSrvBackupGetDatabaseNames 返回的名称必须在调用 CertSrvBackupOpenFile 之前去除单 WCHAR CSBFT_* 前缀。
[in] cbReadHintSize
CertSrvBackupRead 读取文件时用作提示的字节数。 传递给备份上下文的第一个 CertSrvBackupOpenFile 调用的 cbReadHintSize 参数用于调整读取缓冲区的大小。 为此参数传递零,缓冲区的大小将按 CertSrvBackupOpenFile 选择的合理高效大小调整。 如果可用内存不足,缓冲区大小将减少,直到内存分配成功或缓冲区大小达到其可能最小值为止。 传递非零大小,使 CertSrvBackupOpenFile 将缓冲区的大小调整为接近 cbReadHintSize 值的 2 次幂。 实现将仅选择 64 KB 到 4 MB 之间的 2 次幂。
[out] pliFileSize
指向 LARGE_INTEGER 值的指针,该值表示文件中的字节数。
返回值
如果函数成功,该函数将返回S_OK。
如果函数失败,它将返回指示错误的 HRESULT 值。 有关常见错误代码的列表,请参阅 常见 HRESULT 值。
注解
使用此函数打开文件以进行备份。 使用完文件后,通过调用 CertSrvBackupClose 函数关闭该文件。
Certadm.dll 中此函数的名称为 CertSrvBackupOpenFileW。 调用 GetProcAddress 时,必须使用此形式的名称。 此外,此函数在 Certbcli.h 中定义为类型 FNCERTSRVBACKUPOPENFILEW 。
示例
FNCERTSRVBACKUPOPENFILEW* pfnOpenFile;
char * szBackupOpenFunc = "CertSrvBackupOpenFileW";
LARGE_INTEGER liFileSize;
HRESULT hr=0;
// Get the address for the desired function.
// hInst was set by calling LoadLibrary for Certadm.dll.
pfnOpenFile = (FNCERTSRVBACKUPOPENFILEW*)GetProcAddress(hInst,
szBackupOpenFunc);
if ( NULL == pfnOpenFile )
{
printf("Failed GetProcAddress - %s, error=%d\n",
szBackupOpenFunc,
GetLastError() );
exit(1); // or other appropriate error action
}
// Open the file.
// hCSBC was set by an earlier call to CertSrvBackupPrepare.
// pwszFile specifies the name of a file.
// This name could have resulted from parsing the
// output from CertSrvBackupGetDatabaseNames, and so on.
hr = pfnOpenFile(hCSBC,
pwszFile,
0,
&liFileSize);
if (FAILED(hr))
{
printf("Failed pfnOpenFile call [%x] %ws\n",
hr,
pwszFile);
exit(1); // Or other appropriate error action.
}
// Use the opened file as needed.
// When you have finished using the file, call CertSrvBackupClose.
// ...
要求
要求 | 值 |
---|---|
最低受支持的客户端 | 无受支持的版本 |
最低受支持的服务器 | Windows Server 2003 [仅限桌面应用] |
目标平台 | Windows |
标头 | certbcli.h (包括 Certsrv.h) |
Library | Certadm.lib |
DLL | Certadm.dll |