Automatizační servery
Automatizace umožňuje manipulovat s objekty, které jsou implementovány v jiné aplikaci nebo tak lze manipulovat odkrýt objekty aplikace.Automatizační server je aplikace, která zpřístupňuje programovatelné objekty (nazývané objekty automatizace) do jiných aplikací (nazývané klientům automatizace).Automatizační servery se někdy nazývají součásti automatizace.
Vystavuje objekty automatizace umožňuje klientům přístup přímo objekty automatizovat určité postupy a funkce serveru k dispozici.Objekty zobrazovaly tímto způsobem je výhodné v případě aplikace poskytují funkce, které jsou užitečné pro jiné aplikace.Například textový procesor může být jeho funkce kontroly pravopisu, tak, aby se mohou použít jiné programy.Expozice objekty tedy umožňuje prodejcům zlepšení funkčnosti své aplikace pomocí předdefinované funkce jiných aplikací.
Tyto objekty automatizace mají vlastnosti a metody jejich externí rozhraní.Vlastnosti jsou pojmenované atributy objektu automatizace.Vlastnosti jsou jako datové členy třídy jazyka C++.Metody jsou funkce, které pracují na objekty automatizace.Metody jsou jako funkce veřejný člen třídy jazyka C++.
[!POZNÁMKA]
Ačkoli vlastnosti jako C++ datové členy, nejsou přímo přístupné.Zajistit transparentní přístup nastavte vnitřní proměnné v objektu automatizace s dvojicí funkce get a set členů k nim získat přístup.
Tím, že prezentuje funkce aplikace prostřednictvím společné, dobře definované rozhraní automatizace umožňuje vytváření aplikací v jediné obecné programovacího jazyka jako jazyka Microsoft Visual Basic namísto v jazycích maker rozdílné, specifické pro aplikaci.
Podpora pro automatizační servery
Visual C++ a MFC rámec poskytují rozsáhlou podporu pro automatizační servery.Mohou zpracovat velkou režii, které Automation server, abyste se mohli zaměřit své úsilí na funkčnost aplikace.
Rámci hlavní mechanismus pro podporu automatizace je odeslání mapy, sadu maker, který rozbalí do prohlášení a volání potřebná k vystavení metody a vlastnosti technologie OLE.Mapa typické odeslání vypadá takto:
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 Vlastnosti a třídy zobrazení při zachování odeslání mapy.Při přidání nové metody nebo vlastnosti do třídy Visual C++ přidá odpovídající DISP_FUNCTION nebo DISP_PROPERTY makro s parametry určující název třídy, externí a interní názvy metodu nebo vlastnost a datové typy.
Přidat třídu dialogové okno také zjednodušuje deklarace tříd automatizace a řízení operací a jejich vlastnosti.Při použití dialogového okna Přidat třídy do projektu přidat třídu určit základní třída.Pokud základní třída umožňuje automatizaci, zobrazí dialogové okno Přidat třídu ovládací prvky, které slouží k určení, zda by nová třída podporují automatizaci, zda "OLE možné vytvořit" (to znamená, zda objekty třídy lze vytvořit na žádost klienta COM) a externí název COM klienta k použití.
Přidat třídu dialogovém okně pak vytvoří deklarace třídy, včetně příslušná makra pro funkce OLE je zadali.Také přidá obalu s kostlivcem kód pro provádění funkce členů vaší třídy.
Průvodce aplikací MFC zjednodušuje kroky při opouštění vozovkou automatizace aplikace serveru.Vyberete-li automatizace políčko z Upřesňující funkce stránky průvodce aplikace MFC přidá do aplikace InitInstance funkce volání nezbytné registrovat objekty automatizace a spustit aplikaci jako Automation server.
Co chcete udělat?
Viz také
Referenční dokumentace
Průvodce aplikací knihovny MFC