DRT_BOOTSTRAP_PROVIDER 구조체(drt.h)
DRT_BOOTSTRAP_PROVIDER 구조체는 부트스트랩 공급자가 구현해야 하는 DRT 인터페이스를 정의합니다.
구문
typedef struct drt_bootstrap_provider_tag {
PVOID pvContext;
HRESULT( )(const PVOID pvContext) *Attach;
VOID( )(const PVOID pvContext) *Detach;
HRESULT((const PVOID pvContext,BOOL fSplitDetect,ULONG timeout,ULONG cMaxResults,DRT_BOOTSTRAP_RESOLVE_CONTEXT *ResolveContext,BOOL *fFatalError) * )InitResolve;
HRESULT()(const PVOID pvContext, const PVOID pvCallbackContext,DRT_BOOTSTRAP_RESOLVE_CALLBACK callback,DRT_BOOTSTRAP_RESOLVE_CONTEXT ResolveContext,BOOL *fFatalError) * IssueResolve;
VOID( )(const PVOID pvContext,DRT_BOOTSTRAP_RESOLVE_CONTEXT ResolveContext) *EndResolve;
HRESULT()(const PVOID pvContext, const SOCKET_ADDRESS_LIST *pAddressList) * Register;
VOID( )(const PVOID pvContext) *Unregister;
} DRT_BOOTSTRAP_PROVIDER, *PDRT_BOOTSTRAP_PROVIDER;
멤버
pvContext
부트스트랩 확인자에서 정의한 컨텍스트 데이터에 대한 포인터입니다. 부트스트랩 확인자를 만들 때 개발자는 확인자를 필수 정보로 채워야 합니다. 종종 "this" 포인터로 발생합니다. 이 컨텍스트는 DRT_BOOTSTRAP_PROVIDER 정의된 함수의 모든 컨텍스트 매개 변수에 전달됩니다.
Attach
DRT 집합을 사용하여 부트스트랩 공급자에 대한 참조 수를 증분합니다.
pvContext
DRT_BOOTSTRAP_PROVIDERpvContext 값을 포함합니다.
Detach
DRT 집합을 사용하여 부트스트랩 공급자에 대한 참조 수를 감소합니다.
pvContext
DRT_BOOTSTRAP_PROVIDERpvContext 값을 포함합니다.
InitResolve
DRT 인프라에서 호출되어 예정된 이름 확인에 대한 구성 정보를 제공합니다.
pvContext
DRT_BOOTSTRAP_PROVIDERpvContext 값을 포함합니다.
fSplitDetect
resolve 작업이 네트워크 분할 검색 및 복구에 활용되고 있는지를 지정합니다.
시간 제한
resolve 시간이 초과되기 전에 소요해야 하는 최대 시간을 지정합니다. 이 값은 밀리초 단위로 표시됩니다.
cMaxResults
resolve 작업 중에 반환할 최대 결과 수를 지정합니다.
ResolveContext
확인자 특정 데이터에 대한 포인터입니다.
fFatalError
부트스트랩 공급자에 복구할 수 없는 오류가 발생하는 경우 DRT가 오류 상태로 전환하려면 함수가 완료되면 이 매개 변수를 TRUE 로 설정해야 합니다. 디버깅을 위해 상위 계층 애플리케이션에서 사용할 수 있는 HRESULT는 오류 상태로의 전환을 알리는 이벤트와 연결된 DRT_EVENT_DATA 구조의 hr 멤버에 표시됩니다. fFatalError 플래그를 TRUE로 설정하는 경우 이 부트스트랩 공급자 함수는 S_OK 반환하지 않아야 합니다.
IssueResolve
DRT 인프라에서 DRT 클라우드에서 이미 활성화된 노드의 엔드포인트를 결정하는 해결 방법을 실행하기 위해 호출됩니다.
pvContext
DRT_BOOTSTRAP_PROVIDERpvContext 값을 포함합니다.
pvCallbackContext
다음 매개 변수로 정의된 콜백으로 다시 전달되는 컨텍스트 데이터에 대한 포인터입니다.
콜백(callback)
각 결과 및 DRT_E_NO_MORE 대해 다시 호출되는 BOOTSTRAP_RESOLVE_CALLBACK.
ResolveContext
확인자 특정 데이터에 대한 포인터입니다.
fFatalError
부트스트랩 공급자에 복구할 수 없는 오류가 발생하는 경우 DRT가 오류 상태로 전환하려면 함수가 완료되면 이 매개 변수를 TRUE 로 설정해야 합니다. 디버깅을 위해 상위 계층 애플리케이션에서 사용할 수 있는 HRESULT는 오류 상태로의 전환을 알리는 이벤트와 연결된 DRT_EVENT_DATA 구조의 hr 멤버에 표시됩니다. fFatalError 플래그를 TRUE로 설정하는 경우 이 부트스트랩 공급자 함수는 S_OK 반환하지 않아야 합니다.
EndResolve
엔드포인트의 해상도를 종료합니다.
pvContext
DRT_BOOTSTRAP_PROVIDERpvContext 값을 포함합니다.
ResolveContext
지정된 부트스트랩 공급자의 Resolve 함수에서 받은 BOOTSTRAP_RESOLVE_CONTEXT .
Register
부트스트래핑 메커니즘을 사용하여 엔드포인트를 등록합니다. 이 프로세스를 통해 다른 노드가 부트스트랩 확인자를 통해 엔드포인트를 찾을 수 있습니다.
pvContext
DRT_BOOTSTRAP_PROVIDERpvContext 값을 포함합니다.
pAddressList
부트스트래핑 메커니즘에 등록할 주소 목록에 대한 포인터입니다.
Unregister
이 함수는 부트스트래핑 메커니즘을 사용하여 엔드포인트를 등록 취소합니다. 따라서 다른 노드는 부트스트랩 확인자를 통해 로컬 노드를 찾을 수 없습니다.
pvContext
DRT_BOOTSTRAP_PROVIDERpvContext 값을 포함합니다.
요구 사항
지원되는 최소 클라이언트 | Windows 7 Professional [데스크톱 앱만 해당] |
지원되는 최소 서버 | Windows Server 2008 R2 [데스크톱 앱만 해당] |
머리글 | drt.h |