다음을 통해 공유


RpcNsBindingLookupBeginA 함수(rpcnsi.h)

RpcNsBindingLookupBegin 함수는 인터페이스 및 개체에 대한 조회 컨텍스트를 만듭니다.

참고 이 함수는 Windows Vista 이상 운영 체제에서 지원되지 않습니다.
 

구문

RPC_STATUS RpcNsBindingLookupBeginA(
  unsigned long EntryNameSyntax,
  RPC_CSTR      EntryName,
  RPC_IF_HANDLE IfSpec,
  UUID          *ObjUuid,
  unsigned long BindingMaxCount,
  RPC_NS_HANDLE *LookupContext
);

매개 변수

EntryNameSyntax

EntryName 매개 변수의 구문입니다.

HKEY_LOCAL_MACHINE\Software\Microsoft\Rpc\NameService\DefaultSyntax레지스트리 값 항목에 지정된 구문을 사용하려면 RPC_C_NS_SYNTAX_DEFAULT 값을 제공합니다.

EntryName

호환되는 바인딩에 대한 검색이 시작되는 항목 이름에 대한 포인터입니다.

레지스트리 값 항목HKEY_LOCAL_MACHINE\Software\Microsoft\Rpc\NameService\DefaultEntry지정된 항목 이름을 사용하려면 null 포인터 또는 빈 문자열을 제공합니다. 이 경우 EntryNameSyntax 매개 변수는 무시되고 런타임 라이브러리는 기본 구문을 사용합니다.

IfSpec

조회할 인터페이스를 나타내는 스텁 생성 구조체입니다. 인터페이스 사양이 내보내지지 않았거나 호출자에게 문제가 되지 않는 경우 이 매개 변수에 null 값을 지정합니다. 이 경우 반환된 바인딩은 호환되고 지원되는 프로토콜 시퀀스일 뿐이며 지정된 개체 UUID를 포함하도록 보장됩니다. 원하는 인터페이스는 연결된 서버에서 지원되지 않을 수 있습니다.

ObjUuid

선택적 개체 UUID에 대한 포인터입니다.

0이 아닌 UUID의 경우 서버에서 지정된 개체 UUID를 내보낸 경우에만 호환되는 바인딩 핸들이 항목에서 반환됩니다.

이 매개 변수에 대한 null 포인터 값 또는 nil UUID의 경우 반환된 바인딩 핸들에는 호환되는 서버에서 내보낸 개체 UUID 중 하나가 포함됩니다. 서버에서 개체 UUID를 내보내지 않은 경우 반환된 호환 바인딩 핸들에는 nil 개체 UUID가 포함됩니다.

BindingMaxCount

RpcNsBindingLookupNext 함수의 BindingVec 매개 변수에 반환할 최대 바인딩 수입니다.

기본 RPC_C_BINDING_MAX_COUNT_DEFAULT 수를 사용하도록 0 값을 지정합니다.

LookupContext

RpcNsBindingLookupNextRpcNsBindingLookupDone 함수와 함께 사용할 이름 서비스 핸들에 대한 포인터를 반환합니다.

반환 값

의미
RPC_S_OK
호출이 성공했습니다.
RPC_S_INVALID_NAME_SYNTAX
이름 구문이 잘못되었습니다.
RPC_S_UNSUPPORTED_NAME_SYNTAX
이름 구문은 지원되지 않습니다.
RPC_S_INCOMPLETE_NAME
이름이 불완전합니다.
RPC_S_ENTRY_NOT_FOUND
이름 서비스 항목을 찾을 수 없습니다.
RPC_S_NAME_SERVICE_UNAVAILABLE
이름 서비스를 사용할 수 없습니다.
RPC_S_INVALID_OBJECT
잘못된 개체입니다.
 
참고 유효한 오류 코드 목록은 RPC 반환 값을 참조하세요.
 

설명

RpcNsBindingLookupBegin 함수는 지정된 인터페이스 및 개체를 제공하는 서버에 클라이언트 호환 바인딩 핸들을 찾기 위한 조회 컨텍스트를 만듭니다.

RpcNsBindingLookupNext를 호출하기 전에 클라이언트 애플리케이션은 먼저 RpcNsBindingLookupBegin을 호출하여 조회 컨텍스트를 만들어야 합니다. 이 함수에 대한 매개 변수는 RpcNsBindingLookupNext 함수의 작업을 제어합니다.

Windows 2000에서 적용되는 RPC 환경은 Active Directory를 이름 서비스 데이터베이스로 사용하고 런타임 환경에서 검색을 수행하는 순서는 다음과 같습니다.

  • 로컬 캐시에서 검색합니다.
  • 로컬 캐시에서 항목을 찾을 수 없는 경우 해당 컴퓨터의 Active Directory를 검색합니다.
  • 로컬 컴퓨터에서 항목을 찾을 수 없는 경우 도메인의 다른 모든 Active Directory 서비스에 브로드캐스트 요청을 보냅니다.

    항목이 Active Directory에 있지만 항목과 관련된 정보가 없는 경우 런타임 환경에서 이 브로드캐스트 요청을 실행하지 않습니다.

바인딩 핸들 찾기가 완료되면 클라이언트 애플리케이션은 RpcNsBindingLookupDone 함수를 호출하여 조회 컨텍스트를 삭제합니다.

참고

rpcnsi.h 헤더는 UNICODE 전처리기 상수의 정의에 따라 이 함수의 ANSI 또는 유니코드 버전을 자동으로 선택하는 별칭으로 RpcNsBindingLookupBegin을 정의합니다. 인코딩 중립 별칭을 인코딩 중립이 아닌 코드와 혼합하면 컴파일 또는 런타임 오류가 발생하는 불일치가 발생할 수 있습니다. 자세한 내용은 함수 프로토타입에 대한 규칙을 참조하세요.

요구 사항

요구 사항
지원되는 최소 클라이언트 Windows 2000 Professional[데스크톱 앱만]
지원되는 최소 서버 Windows 2000 Server[데스크톱 앱만]
대상 플랫폼 Windows
헤더 rpcnsi.h(Rpc.h 포함)
라이브러리 Rpcns4.lib
DLL Rpcns4.dll

추가 정보

RpcNsBindingLookupDone

RpcNsBindingLookupNext