Метод ICertAdmin2::GetCAPropertyFlags (certadm.h)
Метод GetCAPropertyFlags извлекает флаги свойства для свойства центра сертификации (ЦС). Этот метод был впервые определен в интерфейсе ICertAdmin .
Флаги свойств можно проверить, чтобы определить тип данных и определить, индексируется ли свойство.
Синтаксис
HRESULT GetCAPropertyFlags(
[in] const BSTR strConfig,
[in] LONG PropId,
[out] LONG *pPropFlags
);
Параметры
[in] strConfig
Представляет допустимую строку конфигурации для ЦС в формате COMPUTERNAME\CANAME, где COMPUTERNAME — сетевое имя сервера служб сертификации, а CANAME — общее имя ЦС, указанное при настройке служб сертификации. Дополнительные сведения об имени строки конфигурации см. в разделе ICertConfig.
[in] PropId
Указывает идентификатор свойства. Сведения об этом параметре см. в таблице в разделе ICertAdmin2::GetCAProperty.
[out] pPropFlags
Указатель на значение, представляющее флаги свойств.
Возвращаемое значение
C++
Возвращаемое значение — HRESULT. Значение S_OK указывает, что метод был успешным.VB
Объект Long, представляющий флаги свойства.Комментарии
Значение LONG , полученное путем вызова этого метода, можно проверить, чтобы определить тип данных и индексированное состояние. Чтобы определить тип данных и индексированное состояние, используйте значения PROPTYPE_MASK и PROPFLAGS_INDEXED соответственно.
Примеры
В следующем примере предполагается, что указатель интерфейса ICertAdmin2 является допустимым.
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);
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Ни одна версия не поддерживается |
Минимальная версия сервера | Windows Server 2003 [только классические приложения] |
Целевая платформа | Windows |
Header | certadm.h (включая Certsrv.h) |
Библиотека | Certidl.lib |
DLL | Certadm.dll |