BIND_OPTS 구조체(objidl.h)

모니커 바인딩 작업 중에 사용되는 매개 변수를 포함합니다.

BIND_OPTS 구조 대신 BIND_OPTS2 또는 BIND_OPTS3 구조를 사용할 수 있습니다.

구문

typedef struct tagBIND_OPTS {
  DWORD cbStruct;
  DWORD grfFlags;
  DWORD grfMode;
  DWORD dwTickCountDeadline;
} BIND_OPTS, *LPBIND_OPTS;

멤버

cbStruct

이 구조체의 크기(바이트)입니다.

grfFlags

모니커 바인딩 작업의 측면을 제어하는 플래그입니다. 이 값은 BIND_FLAGS 열거형의 비트 플래그 조합입니다. CreateBindCtx 함수는 이 멤버를 0으로 초기화합니다.

grfMode

모니커가 식별한 개체가 들어 있는 파일을 열때 사용해야 하는 플래그입니다. 가능한 값은 STGM 상수입니다. 바인딩 작업은 파일을 로드할 때 IPersistFile::Load 호출에서 이러한 플래그를 사용합니다. 개체가 이미 실행 중인 경우 바인딩 작업에서 이러한 플래그를 무시합니다. CreateBindCtx 함수는 이 필드를 STGM_READWRITE 초기화합니다.

dwTickCountDeadline

호출자가 바인딩 작업을 완료할 시계 시간(밀리초)입니다. 이 멤버 속도가 가장 중요 하는 경우 호출자 도를 작업의 실행 시간을 수 있습니다. 값이 0이면 마감일이 없음을 나타냅니다. 호출자는 IMoniker::GetTimeOfLastChange 메서드를 호출할 때 이 기능을 가장 자주 사용하지만 다른 작업에도 유용하게 적용할 수 있습니다. CreateBindCtx 함수는 이 필드를 0으로 초기화합니다.

일반적인 최종 기한은 수백 밀리초의 실행을 허용합니다. 이 최종 기한은 요구 사항이 아니라 권장 사항입니다. 그러나 최종 사용자가 최종 기한을 초과하면 지연이 발생할 수 있습니다. 각 모니커 구현은 최종 기한까지 작업을 완료하거나 오류 MK_E_EXCEEDEDDEADLINE 실패해야 합니다.

필요한 하나 이상의 개체가 실행되지 않아 바인딩 작업이 최종 기한을 초과하는 경우 모니커 구현은 IBindCtx::RegisterObjectParam을 사용하여 바인딩 컨텍스트에서 담당하는 개체를 등록해야 합니다. 개체는 매개 변수 이름 "ExceededDeadline", "ExceededDeadline1", "ExceededDeadline2" 등으로 등록되어야 합니다. 호출자가 나중에 실행 중인 개체 테이블에서 개체를 찾으면 호출자는 바인딩 작업을 다시 시도할 수 있습니다.

GetTickCount 함수는 시스템 시작 이후의 밀리초 수를 나타내고 2^31밀리초 후에 다시 0으로 래핑합니다. 따라서 호출자는 실수로 0 값(기한 없음을 나타내지 않음)을 전달하지 않도록 주의해야 하며 모니커 구현은 클록 래핑 문제를 알고 있어야 합니다.

설명

BIND_OPTS 구조체는 바인딩 컨텍스트에 저장됩니다. 동일한 바인딩 컨텍스트는 바인딩하는 동안 복합 모니커의 각 구성 요소에서 사용되므로 동일한 매개 변수를 복합 모니커의 모든 구성 요소에 전달할 수 있습니다. 바인딩 컨텍스트에 대한 자세한 내용은 IBindCtx 를 참조하세요.

모니커 클라이언트(모니커를 사용하여 개체에 대한 인터페이스 포인터를 획득)는 일반적으로 이 구조체의 멤버에 대한 값을 지정할 필요가 없습니다. CreateBindCtx 함수는 바인딩 옵션이 대부분의 상황에 적합한 기본값으로 설정된 바인딩 컨텍스트를 만듭니다. BindMoniker 함수는 모니커 바인딩에 사용할 바인딩 컨텍스트를 만들 때도 동일한 작업을 수행합니다. 이러한 바인딩 옵션의 값을 수정하려면 BIND_OPTS 구조를 IBindCtx::SetBindOptions 메서드에 전달하여 수정할 수 있습니다. 모니커 구현자는 BIND_OPTS 구조를 IBindCtx::GetBindOptions 메서드에 전달하여 이러한 바인딩 옵션의 값을 검색할 수 있습니다.

요구 사항

요구 사항
지원되는 최소 클라이언트 Windows 2000 Professional [데스크톱 앱 | UWP 앱]
지원되는 최소 서버 Windows 2000 Server [데스크톱 앱 | UWP 앱]
머리글 objidl.h

추가 정보

CreateBindCtx

IBindCtx

Imoniker