Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować się zalogować lub zmienić katalog.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Dojścia powiązań składają się z sekwencji protokołów, nazwy lub adresu komputera hosta programu serwera oraz punktu końcowego programu serwera. W związku z tym program kliencki musi uzyskać lub podać te informacje, aby utworzyć powiązanie.
Jeśli program kliencki używa automatycznych dojść powiązań, nie trzeba pisać specjalnego kodu źródłowego w celu utworzenia powiązania ani zarządzania nim. W wycinku klienta są wywoływane funkcje RPC wymagane do ustanowienia i obsługi powiązania. Wystarczy określić, że klient korzysta z automatycznych uchwytów powiązań w pliku konfiguracji aplikacji (ACF) i odpowiednio zaprojektować interfejs. Szczegóły można znaleźć w automatyczne uchwyty powiązań.
Załóżmy na przykład, że tworzysz program kliencki, który wywołuje zdalne funkcje znakowania czasem. W tym miejscu wycinki wykonują całą pracę, a klient musi dołączyć tylko wygenerowany plik nagłówka Auto.h, aby uzyskać prototypy funkcji dla procedur zdalnych. Wywołania aplikacji klienckiej do procedur zdalnych są wyświetlane tak, jakby były wywoływane do procedur lokalnych, jak pokazano w poniższym przykładzie:
/* 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);
}
Jak widać w poprzednim przykładzie, aplikacja kliencka nie musi wykonywać żadnych jawnych wywołań funkcji biblioteki wykonawczej RPC. Zarządza nimi stub klienta.
Jeśli aplikacja używa dojść niejawnych lub jawnych powiązań, klient musi pozyskać informacje o powiązaniu i wywołać funkcje RPC, aby utworzyć dojścia. Źródło pozyskiwania przez klienta wiążących informacji zależy od wymagań Twojej aplikacji. Program instalacyjny, który instaluje aplikację kliencka, może przechowywać informacje o powiązaniach w tworzonych przez nią zmiennych środowiskowych. Może również zapisywać informacje o powiązaniu w pliku konfiguracji specyficznym dla aplikacji. Ponieważ informacje o powiązaniu w zmiennych środowiskowych lub plikach konfiguracji są zwykle przechowywane jako ciągi, aplikacja kliencka będzie musiała przekonwertować ciąg na powiązanie. W środowiskach systemu Windows XP/2000 można pobrać informacje o powiązaniach z usługi Active Directory. Aby uzyskać więcej informacji, zobacz Using String Bindings.
Większość sieci ma serwis nazw. Programy serwera mogą anonsować się w bazie danych usługi nazw. Gdy klient rozpocznie wykonywanie, może uzyskać informacje o powiązaniu z bazy danych usługi nazw. Aby uzyskać szczegółowe informacje, zobacz Importowanie z baz danych Name Service.
Kroki wymagane do wiązania z uchwytami implicit i explicit zostały omówione w następujących tematach:
Aby zapoznać się z krótkim omówieniem tych tematów, zobacz Connecting the Client and the Server.