Поделиться через


Функция 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 , должны иметь префикс CSBFT_ WCHAR* перед вызовом CertSrvBackupOpenFile .

[in] cbReadHintSize

Число байтов, используемых в качестве указания при чтении файла CertSrvBackupRead. Параметр cbReadHintSize , переданный первому вызову CertSrvBackupOpenFile для контекста резервной копии, используется для изменения размера буфера чтения. Передайте ноль для этого параметра, и размер буфера будет достаточно эффективным, выбранным CertSrvBackupOpenFile. Если доступно недостаточно памяти, размер буфера будет уменьшаться до успешного выделения памяти или до тех пор, пока размер буфера не достигнет минимально возможного значения. Передайте ненулевой размер, чтобы CertSrvBackupOpenFile выдал размер буфера до двух значений, близких к значению cbReadHintSize. Реализация будет выбирать только два полномочия от 64 КБ до 4 МБ.

[out] pliFileSize

Указатель на значение LARGE_INTEGER , представляющее количество байтов в файле.

Возвращаемое значение

Если функция выполнена успешно, функция возвращает S_OK.

Если функция завершается сбоем, она возвращает значение HRESULT , указывающее на ошибку. Список распространенных кодов ошибок см. в разделе Общие значения HRESULT.

Комментарии

Используйте эту функцию, чтобы открыть файл для резервного копирования. Завершив использование файла, закройте его, вызвав функцию CertSrvBackupClose .

Имя этой функции в Certadm.dll — CertSrvBackupOpenFileW. Эту форму имени необходимо использовать при вызове GetProcAddress. Кроме того, эта функция определена как тип FNCERTSRVBACKUPOPENFILEW в Certbcli.h.

Примеры

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
Header certbcli.h (включая Certsrv.h)
Библиотека Certadm.lib
DLL Certadm.dll

См. также раздел

CertSrvBackupClose

CertSrvBackupRead

Использование функций резервного копирования и восстановления служб сертификатов