CertSrvBackupGetBackupLogsW 関数 (certbcli.h)
CertSrvBackupGetBackupLogs 関数は、特定のバックアップ コンテキストに対してバックアップする必要がある Certificate Services ログ ファイル名の一覧を取得します。
構文
HRESULT CERTBCLI_API CertSrvBackupGetBackupLogsW(
[in] HCSBC hbc,
[out] PWSTR *ppwszzBackupLogFiles,
[out] DWORD *pcbSize
);
パラメーター
[in] hbc
Certificate Services バックアップ コンテキストへのハンドル。
[out] ppwszzBackupLogFiles
null で終わるログ ファイル名の一覧を受け取る WCHAR ポインターへのポインター。 すべてのファイル名の後に null 文字があり、リストの末尾に余分な null 文字があります。 ファイル名は UNC 形式の "## \\Server\SharePoint\... になります。Path...\FileName.ext" ディレクトリ名は同じ形式になりますが、末尾の "\FileName.ext" は使用しません。 テキスト "##" は Certificate Services Backup ファイルの種類 (CSBFT_*) を示し、各 UNC パスにプレフィックスが付いた単一の null 以外の Unicode 文字として格納されます。 この型タグは Certbcli.h で定義されており、この関数には次のいずれかの値を指定できます。
値 | 意味 |
---|---|
|
パスを含む Certificate Services データベース ログ ファイル名。 |
|
Certificate Services データベースの更新ファイルの名前 (パスを含む)。
Windows Server 2003: データベース更新ファイルは使用されません。 |
この割り当てられたメモリの使用が完了したら、 CertSrvBackupFree 関数を呼び出して解放します。
この関数を呼び出す前に ppwszzBackupLogFiles を NULL に設定することは省略可能です。
[out] pcbSize
ppwszzBackupLogFiles のバイト数を指定する DWORD 値へのポインター。
戻り値
戻り値は HRESULT です。 S_OK の値は成功を示します。
注釈
ログ ファイルは、前回のログ ファイルの切り捨て以降に発生したデータベース アクティビティ (要求の送信、証明書の失効など) を表します。 データベース アクティビティが発生すると、ログ ファイルのボリュームが増加します。 バックアップを実行し、 CertSrvBackupTruncateLogs を呼び出すことで、ログ ファイルのサイズを小さくできます。
Certadm.dll 内のこの関数の名前は CertSrvBackupGetBackupLogsW です。 GetProcAddress を呼び出すときは、この形式の名前を使用する必要があります。 また、この関数は Certbcli.h ヘッダー ファイルの FNCERTSRVBACKUPGETBACKUPLOGSW 型として定義されます。
例
FNCERTSRVBACKUPGETBACKUPLOGSW* pfnGetBackupLogs;
char * szGetBackupLogsFunc = "CertSrvBackupGetBackupLogsW";
WCHAR * pwszzLogFiles;
DWORD nListBytes=0;
HRESULT hr=0;
// Get the address for the desired function.
// hInst was set by calling LoadLibrary for Certadm.dll.
pfnGetBackupLogs = (FNCERTSRVBACKUPGETBACKUPLOGSW*)GetProcAddress
(hInst, szGetBackupLogsFunc);
if ( NULL == pfnGetBackupLogs )
{
printf("Failed GetProcAddress - %s, error=%d\n",
szGetBackupLogsFunc,
GetLastError() );
exit(1); // Or other appropriate error action.
}
// Determine the names of the log files.
// hCSBC was set by an earlier call to CertSrvbackupPrepare.
hr = pfnGetBackupLogs(hCSBC, &pwszzLogFiles, &nListBytes);
if (FAILED(hr))
{
printf("Failed pfnGetBackupLogs call [%x]\n", hr);
exit(1); // Or other appropriate error action.
}
else
{
printf("%d bytes for log file names\n", nListBytes);
WCHAR * pwszLog = pwszzLogFiles;
// Process the list.
while ( L'\0' != *pwszLog )
{
// Use the file name referenced by pwszLog.
// Here it is merely displayed.
printf("%02x: %ws\n", *pwszLog, &pwszLog[1]);
// Move to the next logfile name.
// + 1 moves past the null terminator.
pwszLog+=(wcslen(pwszLog)) + 1;
}
// Free the allocated memory.
// pfnBackupFree is the address of the CertSrvBackupFree
// function.
pfnBackupFree(pwszzLogFiles);
}
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | サポートなし |
サポートされている最小のサーバー | Windows Server 2003 (デスクトップ アプリのみ) |
対象プラットフォーム | Windows |
ヘッダー | certbcli.h (Certsrv.h を含む) |
Library | Certadm.lib |
[DLL] | Certadm.dll |