ICertConfig::GetField 메서드(certcli.h)
GetField 메서드는 구성 데이터베이스의 현재 레코드에서 특정 필드를 가져옵니다. 이 메서드는 ICertConfig 인터페이스에서 처음 정의되었습니다.
구문
HRESULT GetField(
[in] const BSTR strFieldName,
[out, retval] BSTR *pstrOut
);
매개 변수
[in] strFieldName
반환할 필드의 이름을 지정합니다. 이 매개 변수는 필드 이름에 대해 다음과 같은 유효한 문자열 중 하나일 수 있습니다(일부 인증 기관에서 각 필드에 대한 데이터를 제공하지 않을 수 있음).
값 | 의미 |
---|---|
|
CA(인증 기관) 이름을 참조합니다. |
|
서버의 일반 이름입니다. |
|
참조 컴퓨터\CA 이름입니다. |
|
국가/지역. |
|
서버에 대한 설명 주석입니다(사용되지 않는 "주석"을 대체). |
|
교환 인증서를 포함하는 파일의 이름입니다(인증서 서비스 1.0에만 적용됨). |
|
CA 정보가 발견된 위치를 나타내는 문자열입니다. 자세한 내용은 설명 부분을 참조하세요. |
|
도시 또는 마을. |
|
조직. |
|
조직 구성 단위. |
|
GetConfig에 설명된 규칙에 따라 삭제되는 CA 이름입니다. |
|
GetConfig에 설명된 규칙에 따라 삭제되고 단축되는 CA 이름입니다. |
|
참조 컴퓨터 이름입니다. |
|
SanitizedShortName이지만 GetConfig에 설명된 대로 '!xxx' 시퀀스를 사용하여 원래 텍스트로 다시 번역되었습니다. |
|
CA 인증서(CA 서명 인증서라고도 함)가 포함된 파일의 이름입니다. 루트 인증서일 수도 있으며 그렇지 않을 수도 있습니다. |
|
주 또는 지방. |
|
Active Directory의 특정 CA 구성에 대한 인증서 등록 웹 서비스 URL 배열입니다.
Windows Vista 및 Windows Storage Server 2003: 이 필드는 지원되지 않습니다. |
[out, retval] pstrOut
필드에서 데이터를 수신하는 BSTR 에 대한 포인터입니다. BSTR 사용을 마쳤으면 SysFreeString 함수를 호출하여 pbstrOut을 해제합니다.
반환 값
C++
메서드가 성공하면 메서드는 S_OK 반환합니다.메서드가 실패하면 오류를 나타내는 HRESULT 값을 반환합니다. 일반적인 오류 코드 목록은 일반 HRESULT 값을 참조하세요.
VB
반환 값은 필드의 데이터를 나타내는 문자열입니다.설명
이 메서드는 지정된 필드의 필드 데이터를 반환합니다.
strFieldName 매개 변수에서 "Flags"를 지정하면 flags 필드에 대해 검색된 데이터는 C-library 함수 _wtoi 통해 정수로 변환할 수 있는 문자열입니다. 결과 정수는 플래그 CAIF_DSENTRY 및 CAIF_SHAREDFOLDERENTRY 설정되었는지 여부를 확인하기 위해 검사할 수 있는 비트 필드를 나타냅니다. CAIF_DSENTRY(0x00000001)이 설정된 경우 CA에 대한 정보가 Directory Services에 포함되었습니다. CAIF_SHAREDFOLDERENTRY(0x00000002)가 설정된 경우 CA에 대한 정보가 공유 폴더에 포함되었습니다. 이러한 플래그 중 하나 또는 둘 다를 설정할 수 있습니다.
예제
BSTR bstrFieldName = NULL;
BSTR bstrFieldValue = NULL;
HRESULT hr;
// Specify the field to retrieve, for example, "CommonName".
bstrFieldName = SysAllocString(L"<FIELDNAMEHERE>");
if (NULL == bstrFieldName)
{
printf("Memory allocation failed for bstrFieldName.\n");
goto error;
}
// pConfig is a previously instantiated ICertConfig object.
hr = pConfig->GetField(bstrFieldName, &bstrFieldValue);
if (FAILED(hr))
{
printf("Failed GetField - [%x]\n", hr);
goto error;
}
else
printf("GetField value for %ws is: %ws\n",
bstrFieldName, bstrFieldValue );
error:
if (bstrFieldName)
SysFreeString(bstrFieldName);
if (bstrFieldValue)
SysFreeString(bstrFieldValue);
요구 사항
요구 사항 | 값 |
---|---|
지원되는 최소 클라이언트 | 지원되는 버전 없음 |
지원되는 최소 서버 | Windows Server 2003 [데스크톱 앱만 해당] |
대상 플랫폼 | Windows |
헤더 | certcli.h(Certsrv.h 포함) |
라이브러리 | Certidl.lib |
DLL | Certcli.dll |