IMultiInterfaceEventControl::SetDefaultQuery 메서드(eventsys.h)

게시자 필터가 이벤트 메서드와 연결되지 않은 경우 사용할 기본 쿼리를 설정합니다.

구문

HRESULT SetDefaultQuery(
  [in]          REFIID eventIID,
  [in]          BSTR   bstrMethodName,
  [in]          BSTR   bstrCriteria,
  [out, retval] int    *errorIndex
);

매개 변수

[in] eventIID

실행 인터페이스의 인터페이스 식별자입니다.

[in] bstrMethodName

기본 쿼리가 할당된 메서드의 이름입니다.

[in] bstrCriteria

쿼리 조건을 지정하는 문자열입니다. 이 매개 변수는 NULL일 수 없습니다. 이 매개 변수에 대한 유효한 식을 구성하는 자세한 내용은 아래의 주의 섹션을 참조하세요.

[out, retval] errorIndex

bstrCriteria 매개 변수에서 오류의 오프셋으로 표현되는 위치입니다.

반환 값

이 메서드는 다음 값뿐만 아니라 표준 반환 값 E_INVALIDARG, E_OUTOFMEMORY, E_UNEXPECTED 및 E_FAIL 반환할 수 있습니다.

반환 코드 Description
S_OK
메서드가 완료되었습니다.
EVENT_E_QUERYSYNTAX
쿼리 문자열을 평가하는 동안 구문 오류가 발생했습니다.
EVENT_E_QUERYFIELD
쿼리 문자열에 잘못된 필드 이름이 사용되었습니다.
EVENT_E_INTERNALEXCEPTION
예기치 않은 예외가 발생했습니다.
EVENT_E_INTERNALERROR
예기치 않은 내부 오류가 검색되었습니다.

설명

이 메서드는 보다 특수한 형식의 IEventSystem::Query 메서드입니다. 구독 개체만 가져오는 것 외에도 구독 컬렉션이 변경될 때마다 GetSubscriptions 를 호출하여 가져온 컬렉션이 자동으로 업데이트됩니다.

bstrCriteria 매개 변수로 지정된 쿼리 조건은 "ALL"이 될 수 있으며, 모든 구독 개체에 대한 요청을 지정하거나 쿼리 결과에 포함하기 위해 구독 개체가 충족해야 하는 하나 이상의 조건을 나타내는 부울 식입니다. 유효한 식은 다음과 같은 형식입니다.

[NOT] propertynamerelationalOperator입니다. 유효한 관계형 연산자는 다음과 같습니다.

==, =, !=, <>, ~=. 유효한 값은 "string", 'string', {GUID}, TRUE, FALSE, NULL입니다.

개별 부울 식은 AND 또는 OR과 조인할 수 있습니다. 식을 괄호 안에 중첩하여 특정 평가 순서를 적용할 수 있습니다.

다음은 유효한 쿼리 조건의 몇 가지 예입니다.

"EventClassID == {F89859D1-6565-11D1-88C8-0080C7D771BF}"

"EventClassID == {F89859D1-6565-11D1-88C8-0080C7D771BF} AND MethodName = 'StockPriceChange'"

요구 사항

   
지원되는 최소 클라이언트 Windows 2000 Professional[데스크톱 앱만]
지원되는 최소 서버 Windows 2000 Server[데스크톱 앱만]
대상 플랫폼 Windows
헤더 eventsys.h

추가 정보

IMultiInterfaceEventControl