Fonction CertSrvBackupRead (certbcli.h)
La fonction CertSrvBackupRead lit les octets d’un fichier Certificate Services.
Syntaxe
HRESULT CERTBCLI_API CertSrvBackupRead(
[in] HCSBC hbc,
[out] VOID *pvBuffer,
[in] DWORD cbBuffer,
[out] DWORD *pcbRead
);
Paramètres
[in] hbc
Handle dans un contexte de sauvegarde des services de certificats.
[out] pvBuffer
Pointeur Void vers le stockage qui contiendra des octets lus à partir du fichier en cours de sauvegarde.
[in] cbBuffer
Taille de la zone de stockage référencée par pvBuffer.
[out] pcbRead
Pointeur vers une valeur DWORD qui représente le nombre réel d’octets lus par CertSrvBackupRead. Le nombre d’octets lus peut être inférieur à la taille de la zone de stockage allouée à pvBuffer si la fin du fichier a été atteinte.
Valeur retournée
La valeur de retour est HRESULT. Une valeur de S_OK indique la réussite.
Remarques
Après avoir ouvert le fichier à des fins de sauvegarde ( à l’aide de CertSrvBackupOpenFile), appelez CertSrvBackupRead pour récupérer le contenu du fichier et appelez une routine spécifique à l’application pour écrire le contenu sur un support de sauvegarde. CertSrvBackupRead et la routine spécifique à l’application peuvent être placés dans une boucle jusqu’à ce que tous les octets du fichier soient lus et sauvegardés. Lorsque vous avez terminé de lire le fichier, fermez-le en appelant CertSrvBackupClose.
Exemples
#include <windows.h>
#include <stdio.h>
#include <Certbcli.h>
#define BUFFSIZE 524288
FNCERTSRVBACKUPREAD* pfnRead;
char * szBackupReadFunc = "CertSrvBackupRead";
BYTE ReadBuff[BUFFSIZE];
DWORD cbRead=0;
HRESULT hr=0;
// Get the address for the desired function.
// hInst was set by calling LoadLibrary for Certadm.dll.
pfnRead = (FNCERTSRVBACKUPREAD*)GetProcAddress(hInst,
szBackupReadFunc);
if ( NULL == pfnRead )
{
printf("Failed GetProcAddress - %s, error=%d\n",
szBackupReadFunc,
GetLastError() );
exit(1); // Or other appropriate error action.
}
// Read the file.
// hCSBC represents an HCSBC used in
// an earlier call to CertSrvBackupOpenFile.
// To read the entire file, this code
// would be placed in a loop.
hr = pfnRead( hCSBC,
&ReadBuff,
BUFFSIZE,
&cbRead );
if (FAILED(hr))
{
printf("Failed pfnRead call [%x]\n", hr);
exit(1); // Or other appropriate error action.
}
// Use the bytes read as needed. For example,
// in an application-specific routine to back
// up the file contents.
// ...
Configuration requise
Condition requise | Valeur |
---|---|
Client minimal pris en charge | Aucun pris en charge |
Serveur minimal pris en charge | Windows Server 2003 [applications de bureau uniquement] |
Plateforme cible | Windows |
En-tête | certbcli.h (include Certsrv.h) |
Bibliothèque | Certadm.lib |
DLL | Certadm.dll |
Voir aussi
Utilisation des fonctions de sauvegarde et de restauration des services de certificat
Commentaires
https://aka.ms/ContentUserFeedback.
Bientôt disponible : Tout au long de 2024, nous allons supprimer progressivement GitHub Issues comme mécanisme de commentaires pour le contenu et le remplacer par un nouveau système de commentaires. Pour plus d’informations, consultezEnvoyer et afficher des commentaires pour