İstemci Tarafı Bağlama

Bağlama tanıtıcıları bir protokol dizisi, sunucu programının çalıştığı ana bilgisayarın adı veya adresi ve bir sunucu program uç noktasından oluşur. Bu nedenle, istemci programınız bağlama oluşturmak için bu bilgileri edinmeli veya sağlamalıdır.

İstemci programınız otomatik bağlama tanıtıcıları kullanıyorsa, bağlamayı oluşturmak veya yönetmek için özel kaynak kodu yazmanız gerekmez. İstemci uçbirimi, bağlamayı oluşturmak ve sürdürmek için gereken RPC işlevlerini çağırır. Tek yapmanız gereken, istemcinizin uygulama yapılandırma dosyasında (ACF) otomatik bağlama tanıtıcıları kullandığını belirtmek ve arabirimi uygun şekilde tasarlamaktır. Ayrıntılar için bkz. Otomatik Bağlama Kolları.

Örneğin, uzak zaman damgalama işlevlerini çağıran bir istemci programı geliştirdiğinizi varsayalım. Burada takmalar tüm işi yapar ve istemcinin uzak yordamlar için işlev prototiplerini almak için yalnızca oluşturulmuş Auto.h üst bilgi dosyasını içermesi yeterlidir. İstemci uygulaması uzak yordamlara yapılan çağrılar, aşağıdaki örnekte gösterildiği gibi yerel yordamlara çağrı yapılmış gibi görünür:

/* auto handle client application (fragment) */
#include <windows.h>
#include <stdio.h>
#include <time.h>
#include "auto.h"    // header file generated by the MIDL compiler
 
 
void main(int argc, char **argv)
{
    time_t t1;
    time_t t2;
    char * pszTime;
    ...
 
    GetTime(&t1);  // GetTime is a remote procedure
    GetTime(&t2);
 
    pszTime = ctime(&t1);
    printf("time 1= %s\n", pszTime);
 
    pszTime = ctime(&t2);
    printf("time 2= %s\n", pszTime);
 
    Shutdown();    // Shutdown is a remote procedure
    exit(0);
}

Önceki örnekte görebileceğiniz gibi, istemci uygulamasının RPC çalışma zamanı kitaplığı işlevlerine açık çağrı yapması gerekmez. İstemci dublörü bunları yönetir.

Uygulamanız örtük veya açık bağlama tanıtıcıları kullanıyorsa, istemcinin bağlama bilgilerini alması ve tanıtıcıları oluşturmak için RPC işlevlerini çağırması gerekir. İstemcinin bağlama bilgilerini nereden aldığı uygulamanızın gereksinimlerine bağlıdır. İstemci uygulamanızı yükleyen kurulum programı, bağlama bilgilerini oluşturduğu ortam değişkenlerinde depolayabilir. Ayrıca bağlama bilgilerini uygulamaya özgü bir yapılandırma dosyasına kaydedebilir. Ortam değişkenlerindeki veya yapılandırma dosyalarındaki bağlama bilgileri genellikle dize olarak depolandığından, istemci uygulamanızın dizeyi bağlamaya dönüştürmesi gerekir. Windows XP/2000 ortamlarında, bağlama bilgileri Active Directory'den alınabilir. Daha fazla bilgi için bkz. Dize Bağlamalarını Kullanma.

Çoğu ağın bir ad hizmeti vardır. Sunucu programları kendilerini ad hizmeti veritabanında tanıtabilir. bir istemci yürütmeye başladığında, bağlama bilgilerini ad hizmeti veritabanından alabilir. Ayrıntılar için bkz. Ad Servisi Veritabanlarından İçeri Aktarma.

Örtük ve açık tanıtıcılarla bağlama için gereken adımlar aşağıdaki konu başlıklarında ele alınıyor:

Bu konulara kısa bir genel bakış için bkz. İstemci ve Sunucuyu Bağlantı.