Méthode ICertAdmin2 ::GetCAPropertyFlags (certadm.h)
La méthode GetCAPropertyFlags récupère les indicateurs de propriété d’une propriété d’autorité de certification . Cette méthode a d’abord été définie dans l’interface ICertAdmin .
Les indicateurs de propriété peuvent être examinés pour déterminer le type de données et déterminer si la propriété est indexée.
Syntaxe
HRESULT GetCAPropertyFlags(
[in] const BSTR strConfig,
[in] LONG PropId,
[out] LONG *pPropFlags
);
Paramètres
[in] strConfig
Représente une chaîne de configuration valide pour l’autorité de certification sous la forme COMPUTERNAME\CANAME, où COMPUTERNAME est le nom réseau du serveur des services de certificats et CANAME est le nom commun de l’autorité de certification, tel qu’entré lors de l’installation des services de certificats. Pour plus d’informations sur le nom de la chaîne de configuration, consultez ICertConfig.
[in] PropId
Spécifie l’identificateur de propriété. Pour plus d’informations sur ce paramètre, consultez le tableau dans ICertAdmin2 ::GetCAProperty.
[out] pPropFlags
Pointeur vers une valeur qui représente les indicateurs de propriété.
Valeur retournée
C++
La valeur de retour est HRESULT. La valeur S_OK indique que la méthode a réussi.VB
Long représentant les indicateurs de propriété.Remarques
La valeur LONG récupérée en appelant cette méthode peut être examinée pour déterminer le type de données et le status indexé. Pour déterminer le type de données et les status indexés, utilisez respectivement les valeurs PROPTYPE_MASK et PROPFLAGS_INDEXED.
Exemples
L’exemple suivant suppose que le pointeur d’interface ICertAdmin2 est valide.
BSTR bstrCA = NULL;
LONG nFlags; // Variable to contain the property flags.
bstrCA = SysAllocString(L"<COMPUTERNAMEHERE>\\<CANAMEHERE>");
if (NULL == bstrCA)
{
printf("Failed to allocate memory for bstrCA\n");
exit(1);
}
// Retrieve a property's flags.
hr = pCertAdmin2->GetCAPropertyFlags(bstrCA,
CR_PROP_EXITCOUNT,
&nFlags);
if (FAILED(hr))
{
printf("Failed GetCAPropertyFlags\n");
SysFreeString(bstrCA);
exit(1); // Or other error action.
}
// Display the property data type.
switch (nFlags & PROPTYPE_MASK)
{
case PROPTYPE_BINARY:
printf("Type is BINARY\n");
break;
case PROPTYPE_DATE:
printf("Type is DATE\n");
break;
case PROPTYPE_LONG:
printf("Type is LONG\n");
break;
case PROPTYPE_STRING:
printf("Type is STRING\n");
break;
default:
printf("Unexpected data type.\n");
break;
}
// Display the property's indexed status.
printf("Property %s indexed\n",
nFlags & PROPFLAGS_INDEXED ? "is" : "is not");
SysFreeString(bstrCA);
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 | certadm.h (include Certsrv.h) |
Bibliothèque | Certidl.lib |
DLL | Certadm.dll |