Serwery automatyzacji
Automatyzacja umożliwia aplikacji do manipulowania obiektami w innej aplikacji lub narazić obiektów, więc można manipulować.Serwer automatyzacji jest aplikacja, która udostępnia obiektów programowalnych (zwane obiektami automatyzacji) do innych aplikacji (nazywane klienci automatyzacji).Serwery automatyzacji są czasami nazywane składniki automatyzacji.
Uwidacznianie obiekty automatyzacji umożliwia klientom zautomatyzować niektórych procedur, bezpośredni dostęp do obiektów i udostępnia funkcje serwera.Uwidacznianie obiektów w ten sposób jest korzystne, gdy aplikacje zapewniają funkcje przydatne dla innych aplikacji.Na przykład edytor tekstów może narazić jego funkcje sprawdzania pisowni, dzięki czemu inne programy mogą używać go.Narażenie obiektów umożliwia zatem dostawców zwiększyć funkcjonalność swoich aplikacji za pomocą gotowych funkcjonalność innych aplikacji.
Te obiekty automatyzacji mają właściwości i metod ich interfejsu zewnętrznego.Właściwości są nazwane atrybuty obiektu automatyzacji.Właściwości są podobne elementy danych klasy C++.Metody są funkcjami, które działają na obiekty automatyzacji.Metody przypominają funkcje publicznego członka klasy C++.
[!UWAGA]
Właściwości są jak C++ danych członków, nie są one bezpośrednio dostępny.Aby zapewnić dostęp przezroczyste, skonfigurować zmiennej wewnętrznej obiektu automatyzacji z parą get i set funkcji elementów członkowskich do nich dostęp.
Podnosiły funkcjonalności aplikacji za pośrednictwem interfejsu wspólnych, przejrzyste, automatyzacji umożliwia tworzenie aplikacji w jednym ogólne języku programowania takich jak Microsoft Visual Basic zamiast w językach makr różnorodnych, specyficzne dla aplikacji.
Obsługa serwerów automatyzacji
Visual C++ i ram MFC zapewniają obsługę rozległe serwery automatyzacji.Obsługują wiele kłopotów związanych z wprowadzeniem serwer automatyzacji mógł skupić swoje wysiłki na funkcje aplikacji.
Mechanizm głównych ram wspierania automatyzacji jest mapa wysyłki, zestaw makr rozwija się do deklaracji i wywołania potrzebne do określania metod i właściwości dla mechanizmu OLE.Mapa wysyłki typowego wygląda następująco:
BEGIN_DISPATCH_MAP(CMyServerDoc, COleServerDoc)
DISP_PROPERTY(CMyServerDoc, "Msg", m_strMsg, VT_BSTR)
DISP_FUNCTION(CMyServerDoc, "SetDirty", SetDirty, VT_EMPTY, VTS_I4)
END_DISPATCH_MAP()
Okno właściwości i widoku klasy pomóc w utrzymaniu mapy wysyłki.Po dodaniu nowej metody lub właściwości do klasy Visual C++ dodaje odpowiadającego DISP_FUNCTION lub DISP_PROPERTY makro z parametrami, wskazując nazwę klasy, zewnętrzne i wewnętrzne nazwy typów metody lub właściwości i danych.
Add Class okno dialogowe upraszcza również deklarację klasy automatyzacji i zarządzania ich właściwości i działania.Użycie w oknie dialogowym Dodaj klasy do dodawania klasy do projektu, należy określić jego klasy podstawowej.Jeśli klasa podstawowa umożliwia automatyzację, okno dialogowe Dodawanie klasy Wyświetla formanty, które można określić, czy nowa klasa powinna wspierać automatyzacji, czy jest "OLE tworzyć" (oznacza to, czy obiekty klasy można utworzyć na żądanie od klienta COM) i zewnętrznych nazw klientów COM.
Add Class okno dialogowe tworzy następnie deklaracja klasy, włączając odpowiednie makra dla funkcji OLE określono.Dodaje także kod szkielet implementacji funkcji elementów członkowskich swojej klasy.
Kreator aplikacji MFC upraszcza etapy wysiadaniu aplikacji serwera automatyzacji podłoża.Wybranie opcji automatyzacji pole wyboru z Zaawansowane funkcje stronie Kreatora aplikacji MFC dodaje do aplikacji InitInstance działać wywołań, wymagane do rejestrowania obiekty automatyzacji i uruchomić aplikację jako serwer automatyzacji.