영어로 읽기

다음을 통해 공유


예제(RPC)

SDK(플랫폼 소프트웨어 개발 키트)에는 다음과 같이 다양한 RPC(원격 프로시저 호출) 개념을 보여 주는 예제가 포함되어 있습니다.

  • ASYNCRPC는 비동기 원격 프로시저 호출을 사용하는 RPC 애플리케이션의 구조를 보여 줍니다. 또한 호출 완료에 대한 다양한 알림 방법을 보여 줍니다.

  • CLUUID는 클라이언트 개체 UUID를 사용하여 클라이언트가 원격 프로시저의 여러 구현 중에서 선택할 수 있도록 하는 방법을 보여 줍니다.

  • DATA 디렉터리에는 4개의 프로그램이 포함되어 있습니다. DUNION은 차별된(없음 캡슐화되지 않은) 공용 구조체를 보여 줍니다. INOUT에서는 [in], [out] 매개 변수를 보여 줍니다. REPAS는 represent_as 특성을 보여 줍니다. XMIT는 transmit_as 특성을 보여 줍니다.

  • DYNEPT는 동적 엔드포인트를 통해 서버에 대한 연결을 관리하는 클라이언트 애플리케이션을 보여 줍니다.

  • FILEREP 디렉터리에는 개발자가 간단한 파일 복제 서비스, 다중 사용자 파일 복제 서비스, 보안 기능을 지원하는 서비스 및 RPC 비동기 파이프를 사용하는 서비스를 작성하는 방법을 보여 주는 네 가지 샘플이 포함되어 있습니다.

  • HANDLES 디렉터리에는 각각 auto_handle, [ context_handle] 및 제네릭(사용자 정의) 핸들을 보여 주는 AUTO, CXHNDL, USRDEF의 세 가지 프로그램이 포함되어 있습니다.

  • HELLO는 "Hello, world"의 클라이언트/서버 구현입니다.

  • PICKLE 디렉터리에는 두 가지 프로그램이 있습니다. PICKLP는 데이터 프로시저 serialization을 보여 줍니다. PICKLT는 데이터 형식 serialization을 보여 줍니다. 두 프로그램 모두 [인코딩][디코딩] 특성을 사용합니다.

  • PIPES는 파이프 형식 생성자의 사용을 보여 줍니다.

  • RPCSVC는 RPC를 사용하여 서비스의 구현을 보여 줍니다.

  • STROUT은 2차원 개체(포인터 배열)에 대해 서버에서 메모리를 할당하고 [out]-only 매개 변수로 클라이언트에 다시 전달하는 방법을 보여 줍니다. 그러면 클라이언트가 메모리를 해제합니다. 이 기술을 사용하면 스텁이 반환되는 데이터의 양을 미리 알지 못하고 서버를 호출할 수 있습니다.

    또한 이 프로그램을 사용하면 사용자가 UNICODE 또는 ANSI용으로 컴파일할 수 있습니다.

이러한 프로그램의 모든 원본 파일 및 메이크파일은 플랫폼 SDK에 있습니다.

기본 RPC 애플리케이션 개발 및 간단한 예제는 자습서 topics 참조하세요.