Bagikan melalui


Mengembangkan Klien

Mengembangkan program klien RPC mirip dengan mengembangkan program server. Untuk informasi tentang mengembangkan program server RPC, lihat Mengembangkan Server.

Seperti dalam pengembangan server, program klien Anda harus menyertakan file header yang dihasilkan pengkompilasi MIDL dari file .idl Anda. Pengkompilasi MIDL juga menghasilkan file sumber C yang berisi lonjakan klien. Anda harus mengkompilasi file sumber C ini dan menautkannya ke program klien Anda. (Selain itu, pengkompilasi MIDL menghasilkan file sumber C yang berisi stub server, tetapi itu tidak relevan dengan diskusi ini.)

Selain mengkompilasi dan menautkan stub klien dengan file program, Anda harus menautkan pustaka impor (dan pustaka lain yang dibutuhkan program klien Anda) ke program klien Anda. Proses pembuatan program klien RPC diilustrasikan dalam diagram berikut.

proses pembuatan program klien untuk aplikasi terdistribusi

Contoh dalam ilustrasi sebelumnya menunjukkan pembuatan program klien RPC yang disebut MyClnt.exe. Langkah pertama adalah menentukan antarmuka dalam file MyApp.idl. Pengkompilasi MIDL menggunakan MyApp.idl untuk menghasilkan file MyApp_c.c, yang berisi stub klien. Ini juga menghasilkan file MyApp.h, yang harus disertakan oleh program klien. Program klien juga perlu menyertakan file RPC.h dan RPCNDR.h.

Program klien itu sendiri dibuat dalam file MyClnt.c. Dalam proyek nyata, program klien biasanya akan terdiri dari beberapa file sumber C. Semuanya perlu dikompilasi dan ditautkan bersama-sama. Namun, contoh ini hanya menggunakan satu file untuk kesederhanaan.

File MyClnt.c dan MyApp_c.c dikompilasi dan ditautkan bersama dengan pustaka run-time RPC, dan pustaka lain yang dibutuhkan program klien. Hasilnya adalah program klien yang dapat dieksekusi bernama MyClnt.exe.

Jika Anda tidak mengkompilasi file IDL Anda dalam mode kompatibilitas OSF (/osf), program klien Anda harus menyediakan fungsi untuk mengalokasikan memori dan fungsi untuk membatalkan alokasinya. Untuk Windows 2000 dan versi yang lebih baru, mode yang disarankan adalah /Oicf. Untuk detailnya, lihat Bagaimana Memori Dialokasikan dan Dibatalkan Alokasinya, serta Pointer dan Alokasi Memori.