Aracılığıyla paylaş


Otomasyon Sunucuları

Otomasyon, uygulamanızın başka bir uygulamada uygulanan nesneleri işlemesini veya nesneleri değiştirilebilmeleri için kullanıma sunmasını sağlar. Otomasyon sunucusu, programlanabilir nesneleri (Otomasyon nesneleri olarak adlandırılır) diğer uygulamaların (Otomasyon istemcileri olarak adlandırılır) kullanıma sunan bir uygulamadır. Otomasyon sunucuları bazen Otomasyon bileşenleri olarak adlandırılır.

Otomasyon nesnelerinin kullanıma sunulması, istemcilerin sunucunun kullanılabilir hale getirdiği nesnelere ve işlevlere doğrudan erişerek belirli yordamları otomatikleştirmesini sağlar. Nesneler bu şekilde açığa çıktığında, uygulamalar diğer uygulamalar için yararlı olan işlevler sağladığında yararlı olur. Örneğin, sözcük işlemcisi diğer programların kullanabilmesi için yazım denetimi işlevini kullanıma açabilir. Böylece nesnelerin açığa çıkarma özelliği, satıcıların diğer uygulamaların hazır işlevselliğini kullanarak uygulamalarının işlevselliğini geliştirmesine olanak tanır.

Bu Otomasyon nesneleri, dış arabirimleri olarak özelliklere ve yöntemlere sahiptir. Özellikler Automation nesnesinin adlandırılmış öznitelikleridir. Özellikler, C++ sınıfının veri üyeleri gibidir. Yöntemler, Otomasyon nesneleri üzerinde çalışan işlevlerdir. Yöntemler, C++ sınıfının genel üye işlevleri gibidir.

Dekont

Özellikler C++ veri üyeleri gibi olsa da, doğrudan erişilebilir değildir. Saydam erişim sağlamak için Otomasyon nesnesinde bunlara erişecek bir çift get/set üye işleviyle bir iç değişken ayarlayın.

Otomasyon, uygulama işlevselliğini yaygın ve iyi tanımlanmış bir arabirim aracılığıyla kullanıma sunarak, uygulamaları farklı, uygulamaya özgü makro dilleri yerine Microsoft Visual Basic gibi tek bir genel programlama dilinde derlemeyi mümkün kılar.

Otomasyon Sunucuları desteği

Visual C++ ve MFC çerçevesi Otomasyon sunucuları için kapsamlı destek sağlar. Otomasyon sunucusu oluşturmayla ilgili ek yükün büyük bir kısmını ele alır, böylece çalışmalarınızı uygulamanızın işlevselliğine odaklayabilirsiniz.

Otomasyonu desteklemek için çerçevenin temel mekanizması, OLE'nin yöntemlerini ve özelliklerini kullanıma sunma amacıyla gerekli bildirimlere ve çağrılara genişleyen bir makro kümesi olan dağıtım haritasıdır. Tipik bir dağıtım eşlemesi şöyle görünür:

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()

Sınıf Sihirbazı ve Sınıf Görünümü, dağıtım eşlemelerinin bakımına yardımcı olabilir. Bir sınıfa yeni bir yöntem veya özellik eklediğinizde, Visual Studio sınıf adını, yöntemin veya DISP_PROPERTY özelliğin dış ve iç adlarını ve veri türlerini gösteren parametrelere karşılık gelen DISP_FUNCTION veya makro ekler.

Sınıf Ekle iletişim kutusu, Otomasyon sınıflarının bildirimini ve bunların özellikleriyle işlemlerinin yönetimini de basitleştirir. Projenize sınıf eklemek için Sınıf Ekle iletişim kutusunu kullandığınızda, temel sınıfını belirtirsiniz. Temel sınıf Otomasyona izin veriyorsa, Sınıf Ekle iletişim kutusunda yeni sınıfın Otomasyon'u destekleyip desteklemeyeceğini, bunun "OLE oluşturulabilir" olup olmadığını (yani, sınıfın nesnelerinin COM istemcisinden gelen bir istekte oluşturulup oluşturulamayacağını) ve COM istemcisinin kullanacağı dış adı belirtmek için kullandığınız denetimleri görüntüler.

Ardından Sınıf Ekle iletişim kutusu, belirttiğiniz OLE özellikleri için uygun makroları içeren bir sınıf bildirimi oluşturur. Ayrıca, sınıfınızın üye işlevlerinin uygulanması için iskelet kodunu ekler.

MFC Uygulama Sihirbazı, otomasyon sunucusu uygulamanızın yerden kesilmesine yönelik adımları basitleştirir. Gelişmiş Özellikler sayfasından Otomasyon onay kutusunu seçerseniz, MFC Uygulama Sihirbazı uygulamanızın InitInstance işlevine Otomasyon nesnelerinizi kaydetmek ve uygulamanızı Otomasyon sunucusu olarak çalıştırmak için gereken çağrıları ekler.

Ne yapmak istiyorsunuz?

Ayrıca bkz.

Otomasyon
MFC Uygulama Sihirbazı