Metodo ICertAdmin2::GetCAPropertyFlags (certadm.h)

Il metodo GetCAPropertyFlags recupera i flag di proprietà per una proprietà ca (Certification Authority ). Questo metodo è stato definito per la prima volta nell'interfaccia ICertAdmin .

I flag di proprietà possono essere esaminati per determinare il tipo di dati e per determinare se la proprietà è indicizzata.

Sintassi

HRESULT GetCAPropertyFlags(
  [in]  const BSTR strConfig,
  [in]  LONG       PropId,
  [out] LONG       *pPropFlags
);

Parametri

[in] strConfig

Rappresenta una stringa di configurazione valida per la CA nel formato COMPUTERNAME\CANAME, dove COMPUTERNAME è il nome di rete del server Servizi certificati e CANAME è il nome comune della CA, come immesso durante l'installazione di Servizi certificati. Per informazioni sul nome della stringa di configurazione, vedere ICertConfig.

ImportanteGetCAPropertyFlags non cancella la cache interna quando viene modificata la stringa di configurazione. Quando si modifica la stringa di configurazione per la CA, è necessario creare un'istanza di un nuovo oggetto ICertAdmin e chiamare di nuovo questo metodo con la nuova stringa di configurazione.
 

[in] PropId

Specifica l'identificatore della proprietà. Per informazioni su questo parametro, vedere la tabella in ICertAdmin2::GetCAProperty.

[out] pPropFlags

Puntatore a un valore che rappresenta i flag delle proprietà.

Valore restituito

C++

Il valore restituito è un HRESULT. Un valore di S_OK indica che il metodo ha avuto esito positivo.

VB

Oggetto Long che rappresenta i flag delle proprietà.

Commenti

Il valore LONG recuperato chiamando questo metodo può essere esaminato per determinare il tipo di dati e lo stato indicizzato. Per determinare il tipo di dati e lo stato indicizzato, usare rispettivamente i valori PROPTYPE_MASK e PROPFLAGS_INDEXED.

Esempio

Nell'esempio seguente si presuppone che il puntatore dell'interfaccia ICertAdmin2 sia valido.

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);

Requisiti

Requisito Valore
Client minimo supportato Nessuno supportato
Server minimo supportato Windows Server 2003 [solo app desktop]
Piattaforma di destinazione Windows
Intestazione certadm.h (include Certsrv.h)
Libreria Certidl.lib
DLL Certadm.dll