클라이언트 개발

RPC 클라이언트 프로그램 개발은 서버 프로그램 개발과 비슷합니다. RPC 서버 프로그램 개발에 대한 자세한 내용은 서버 개발을 참조하세요.

서버 개발과 마찬가지로 클라이언트 프로그램에는 MIDL 컴파일러가 .idl 파일에서 생성하는 헤더 파일이 포함되어야 합니다. MIDL 컴파일러는 클라이언트 스텁을 포함하는 C 소스 파일도 생성합니다. 이 C 원본 파일을 컴파일하고 클라이언트 프로그램에 연결해야 합니다. 또한 MIDL 컴파일러는 서버 스텁을 포함하는 C 소스 파일을 생성하지만 이 설명과는 관련이 없습니다.

클라이언트 스텁을 컴파일하고 프로그램 파일과 연결하는 것 외에도 가져오기 라이브러리(및 클라이언트 프로그램에 필요한 다른 라이브러리)를 클라이언트 프로그램에 연결해야 합니다. RPC 클라이언트 프로그램을 만드는 프로세스는 다음 다이어그램에 나와 있습니다.

분산 애플리케이션에 대한 클라이언트 프로그램을 만드는 프로세스

이전 그림의 예제에서는 MyClnt.exe 라는 RPC 클라이언트 프로그램을 만드는 방법을 보여 줍니다. 첫 번째 단계는 MyApp.idl 파일에서 인터페이스를 정의하는 것입니다. MIDL 컴파일러는 MyApp.idl을 사용하여 클라이언트 스텁이 포함된 파일 MyApp_c.c를 생성합니다. 또한 클라이언트 프로그램에 포함해야 하는 MyApp.h 파일을 생성합니다. 클라이언트 프로그램에는 RPC.h 및 RPCNDR.h 파일도 포함되어야 합니다.

클라이언트 프로그램 자체는 MyClnt.c 파일에 만들어집니다. 실제 프로젝트에서 클라이언트 프로그램은 일반적으로 여러 C 원본 파일로 구성됩니다. 모두 컴파일하고 연결해야 합니다. 그러나 이 예제에서는 단순성을 위해 하나의 파일만 사용합니다.

MyClnt.c 및 MyApp_c.c 파일은 RPC 런타임 라이브러리 및 클라이언트 프로그램에 필요한 다른 라이브러리와 함께 컴파일되고 연결됩니다. 결과는 MyClnt.exe 라는 실행 파일 클라이언트 프로그램입니다.

OSF 호환 모드(/osf)에서 IDL 파일을 컴파일하지 않는 경우 클라이언트 프로그램은 메모리 할당을 위한 함수와 할당 취소를 위한 함수를 제공해야 합니다. Windows 2000 이상 버전의 경우 권장 모드는 /Oicf입니다. 자세한 내용은 메모리 할당 및 할당 취소 방법 및포인터 및 메모리 할당을 참조하세요.