다음을 통해 공유


IConditionFactory::Resolve 메서드(structuredquery.h)

조건 트리에서 다음과 같은 다양한 변환을 수행합니다. 상대 날짜/시간 식이 있는 조건을 절대 날짜/시간이 있는 조건(VT_FILETIME)으로 해결합니다. 인식된 다른 명명된 엔터티를 실제 값이 있는 조건 트리로 바꿉니다. 조건 트리를 간소화합니다. 는 가상 또는 복합 속성을 다른 속성의 OR 트리로 대체합니다. 는 조건이 적용되지 않은 속성 키워드가 있는 쿼리에서 발생하는 조건 트리를 제거합니다.

구문

HRESULT Resolve(
  [in]          ICondition                      *pc,
  [in]          STRUCTURED_QUERY_RESOLVE_OPTION sqro,
  [in]          const SYSTEMTIME                *pstReferenceTime,
  [out, retval] ICondition                      **ppcResolved
);

매개 변수

[in] pc

형식: ICondition*

확인할 ICondition 개체에 대한 포인터입니다.

[in] sqro

형식: STRUCTURED_QUERY_RESOLVE_OPTION

0개 이상의 STRUCTURED_QUERY_RESOLVE_OPTION 플래그를 지정합니다. Windows 7 이상에서는 SQRO_ADD_VALUE_TYPE_FOR_PLAIN_VALUES 플래그가 sqro에 자동으로 추가됩니다.

[in] pstReferenceTime

형식: SYSTEMTIME const*

참조 날짜 및 시간으로 사용할 SYSTEMTIME 값에 대한 포인터입니다. sqro가 SQRO_DONT_RESOLVE_DATETIME 설정된 경우 null 포인터를 전달할 수 있습니다.

[out, retval] ppcResolved

형식: ICondition**

모든 시간 필드가 VT_FILETIME 형식의 값을 포함하도록 확인된 새 ICondition 에 대한 포인터를 받습니다. 이 새로운 조건 트리는 PC의 확인된 버전입니다.

반환 값

형식: HRESULT

메서드가 성공하면 S_OK를 반환하고, 그러지 않으면 HRESULT 오류 코드를 반환합니다.

설명

Parse 메서드에서 생성되고 GetQuery에서 반환된 조건 트리에서 는 속성을 이러한 속성에 대한 제한과 쌍으로 연결하여 부분적으로 완료된 조건 트리를 만듭니다. IConditionFactory::Resolve 메서드는 해결이라는 프로세스로 이러한 조건 트리를 완료합니다. 입력 조건 트리는 어떤 방식으로도 수정되지 않습니다. 출력 조건 트리는 해결되지 않은 날짜/시간 값을 가진 리프 노드가 없는 입력 조건의 일부를 공유할 수 있습니다.

참고 리프 노드를 확인하면 리프가 아닌 노드가 생성되는 경우가 많습니다.
 
예를 들어 구조적 쿼리는 상대 날짜/시간 식을 지원합니다. 이 식은 참조 시간에 적용될 때까지 해결되지 않은 상태로 유지됩니다. 의미 체계 형식 System.StructuredQueryType.DateTime이 있는 리프 노드에서 값은 VT_FILETIME 또는 VT_LPWSTR 수 있습니다. VT_FILETIME 절대 날짜/시간이므로 이미 확인되었습니다. VT_LPWSTR 상대 날짜/시간 식의 문자열 표현입니다. 지정된 참조 시간은 현지 시간이어야 하지만 결과 쿼리 식에서 확인된 시간은 UTC(협정 세계시)입니다.

StructuredQuerySample은 콘솔에서 줄을 읽고, 시스템 스키마를 사용하여 구문 분석하고, 결과 조건 트리를 표시하는 방법을 보여 줍니다.

요구 사항

요구 사항
지원되는 최소 클라이언트 WINDOWS XP SP2, Windows Vista [데스크톱 앱만 해당]
지원되는 최소 서버 WINDOWS Server 2003 SP1 [데스크톱 앱만 해당]
대상 플랫폼 Windows
헤더 structuredquery.h
재배포 가능 파일 WDS(Windows 데스크톱 검색) 3.0

추가 정보

CONDITION_OPERATION

CONDITION_TYPE

ICondition

ICondition2

IConditionFactory

IConditionFactory2

참조