CertSrvBackupGetDatabaseNamesW-Funktion (certbcli.h)
Die CertSrvBackupGetDatabaseNames-Funktion ruft die Liste der Zertifikatdienste-Datenbankdateinamen ab, die für den angegebenen Sicherungskontext gesichert werden müssen.
Syntax
HRESULT CERTBCLI_API CertSrvBackupGetDatabaseNamesW(
[in] HCSBC hbc,
[out] PWSTR *ppwszzAttachmentInformation,
[out] DWORD *pcbSize
);
Parameter
[in] hbc
Ein Handle für einen Zertifikatdienste-Sicherungskontext.
[out] ppwszzAttachmentInformation
Ein Zeiger auf einen WCHAR-Zeiger , der die Liste der mit NULL beendeten Datenbankdateinamen empfängt. Hinter jedem Dateinamen befindet sich ein NULL-Zeichen und ein zusätzliches NULL-Zeichen am Ende der Liste. Der Dateiname hat das UNC-Format "## \\Server\SharePoint\... Path...\FileName.ext". Die Verzeichnisnamen haben das gleiche Format, aber ohne den nachfolgenden "\FileName.ext". Der Text "##" bezeichnet einen Dateityp der Zertifikatdienstesicherung (CSBFT_*) und wird als einzelnes Unicode-Zeichen ohne Null gespeichert, das jedem UNC-Pfad vorangestellt ist. Das Type-Tag ist in Certbcli.h definiert und kann der folgende Wert für diese Funktion sein.
Wert | Bedeutung |
---|---|
|
Name der Certificate Services-Datenbankdatei einschließlich Pfad. |
Sie müssen diesen zugewiesenen Arbeitsspeicher freigeben, wenn Sie CertSrvBackupFree aufrufen. Vor dem Aufrufen dieser Funktion ist das Festlegen von *ppwszzAttachmentInformation auf NULL optional.
[out] pcbSize
Ein Zeiger auf den DWORD-Wert , der die Anzahl der Bytes in ppwszzAttachmentInformation angibt.
Rückgabewert
Der Rückgabewert ist ein HRESULT. Ein Wert von S_OK gibt den Erfolg an.
Hinweise
Der Name dieser Funktion im Certadm.dll lautet CertSrvBackupGetDatabaseNamesW. Sie müssen diese Form des Namens verwenden, wenn Sie GetProcAddress aufrufen. Außerdem ist diese Funktion als Typ FNCERTSRVBACKUPGETDATABASENAMESW in der Headerdatei Certbcli.h definiert.
Beispiele
FNCERTSRVBACKUPGETDATABASENAMESW* pfnGetDBNames;
char * szGetDBNamesFunc = "CertSrvBackupGetDatabaseNamesW";
WCHAR * pwszzDBFiles;
DWORD nListBytes=0;
HRESULT hr=0;
// Get the address for the desired function.
// hInst was set by calling LoadLibrary for Certadm.dll.
pfnGetDBNames = (FNCERTSRVBACKUPGETDATABASENAMESW*)
GetProcAddress(hInst, szGetDBNamesFunc);
if ( NULL == pfnGetDBNames )
{
printf("Failed GetProcAddress - %s, error=%d\n",
szGetDBNamesFunc,
GetLastError() );
exit(1); // Or other appropriate error action.
}
// Determine the names of the database files.
// hCSBC was set by an earlier call to CertSrvBackupPrepare
hr = pfnGetDBNames(hCSBC, &pwszzDBFiles, &nListBytes);
if (FAILED(hr))
{
printf("Failed pfnGetDBNames call [%x]\n", hr);
exit(1); // Or other appropriate error action.
}
else
{
printf("%d bytes for DB file names\n", nListBytes);
WCHAR * pwszFile = pwszzDBFiles;
// Process the list.
while ( L'\0' != *pwszFile )
{
// Use the file name referenced by pwszFile.
// Here it is merely displayed.
printf("%02x: %ws\n", *pwszFile, &pwszFile[1]);
// Move to the next database file name.
// + 1 moves past the null terminator.
pwszFile+=(wcslen(pwszFile)) + 1;
}
// Free the allocated memory.
// pfnBackupFree is the address of the
// CertSrvBackupFree function.
pfnBackupFree(pwszzDBFiles);
}
Anforderungen
Anforderung | Wert |
---|---|
Unterstützte Mindestversion (Client) | Nicht unterstützt |
Unterstützte Mindestversion (Server) | Windows Server 2003 [nur Desktop-Apps] |
Zielplattform | Windows |
Kopfzeile | certbcli.h (include Certsrv.h) |
Bibliothek | Certadm.lib |
DLL | Certadm.dll |
Weitere Informationen
Verwenden der Sicherungs- und Wiederherstellungsfunktionen für Zertifikatdienste