Udostępnij za pośrednictwem


Klienci automatyzacji

Automatyzacja umożliwia aplikacji manipulowanie obiektami zaimplementowanym w innej aplikacji lub uwidacznianie obiektów w celu manipulowania nimi. Klient usługi Automation to aplikacja, która może manipulować ujawnionymi obiektami należącymi do innej aplikacji. Aplikacja, która uwidacznia obiekty, jest nazywana serwerem usługi Automation. Klient manipuluje obiektami aplikacji serwera, uzyskując dostęp do właściwości i funkcji tych obiektów.

Typy klientów automatyzacji

Istnieją dwa typy klientów usługi Automation:

  • Klienci dynamicznie (w czasie wykonywania) uzyskują informacje o właściwościach i operacjach serwera.

  • Klienci, którzy posiadają informacje statyczne (podane w czasie kompilacji), które określają właściwości i operacje serwera.

Klienci pierwszego rodzaju uzyskują informacje o metodach i właściwościach serwera, wykonując zapytanie dotyczące mechanizmu systemu IDispatch OLE. Chociaż jest ona odpowiednia do użycia dla klientów dynamicznych, IDispatch trudno jest jej używać w przypadku klientów statycznych, gdzie obiekty, które są sterowane, muszą być znane w czasie kompilacji. W przypadku klientów powiązanych statycznie klasy programu Microsoft Foundation udostępniają klasę COleDispatchDriver .

Klienci związani statycznie używają klasy serwera proxy, która jest statycznie połączona z aplikacją kliencką. Ta klasa zapewnia bezpieczne hermetyzację C++ właściwości i operacji aplikacji serwera.

Klasa COleDispatchDriver zapewnia główną obsługę po stronie klienta usługi Automation. Za pomocą okna dialogowego Dodawanie nowego elementu utworzysz klasę pochodzącą z COleDispatchDriverklasy .

Następnie należy określić plik biblioteki typów opisujący właściwości i funkcje obiektu aplikacji serwera. Okno dialogowe Dodawanie elementu odczytuje ten plik i tworzy klasę COleDispatchDriverpochodną z funkcjami składowymi, które aplikacja może wywołać w celu uzyskania dostępu do obiektów aplikacji serwera w języku C++ w bezpieczny sposób. Dodatkowe funkcje dziedziczone z COleDispatchDriver upraszczają proces wywoływania odpowiedniego serwera automatyzacji.

Obsługa zdarzeń w klientach usługi Automation

Jeśli chcesz obsługiwać zdarzenia w kliencie automatyzacji, musisz dodać interfejs ujścia. MFC zapewnia obsługę kreatora dodawania interfejsów ujścia dla kontrolek ActiveX, ale nie obsługuje innych serwerów COM.

Zobacz też

Klienci automatyzacji: korzystanie z bibliotek typów
Automatyzacja
Kreator aplikacji MFC