MFC'de MAPI Desteği
MFC, sınıfındaki CDocument
Microsoft Mesajlaşma Uygulama Programı Arabirimi'nin (MAPI) bir alt kümesi için destek sağlar. Özellikle, CDocument
son kullanıcının makinesinde posta desteği olup olmadığını belirleyen ve varsa standart komut kimliği ID_FILE_SEND_MAIL posta gönder komutunu etkinleştiren üye işlevlerine sahiptir. Bu komutun MFC işleyici işlevi, kullanıcının elektronik posta yoluyla belge göndermesine olanak tanır.
İpucu
MFC, MAPI işlev kümesinin tamamını kapsüllemese de, win32 API işlevlerini doğrudan MFC programlarından çağırabileceğiniz gibi MAPI işlevlerini doğrudan çağırabilirsiniz.
Uygulamanızda Posta Gönder komutunu sağlamak çok kolaydır. MFC, bir belgeyi ( CDocument
türetilmiş nesne) ek olarak paketlemek ve posta olarak göndermek için uygulamayı sağlar. Bu ek, belgenin içeriğini posta iletisine kaydeden (seri hale getiren) dosya kaydetme komutuyla eşdeğerdir. Bu uygulama, kullanıcıya postayı ele alma ve posta iletisine konu ve ileti metni ekleme fırsatı vermek için kullanıcının makinesindeki posta istemcisini çağırır. Kullanıcılar tanıdık posta uygulamalarının kullanıcı arabirimini görür. Bu işlev iki CDocument
üye işlevi tarafından sağlanır: OnFileSendMail
ve OnUpdateFileSendMail
.
MAPI'nin eki göndermek için dosyayı okuması gerekir. Uygulama bir OnFileSendMail
işlev çağrısı sırasında veri dosyasını açık tutarsa, dosyanın birden çok işlemin dosyaya erişmesine izin veren bir paylaşım moduyla açılması gerekir.
Not
sınıfı COleDocument
için geçersiz kılma sürümü OnFileSendMail
bileşik belgeleri doğru şekilde işler.
Komut kimliği ID_FILE_SEND_MAIL olan bir menü öğesi eklemek için Visual C++ menü düzenleyicisini kullanın.
Bu komut kimliği AFXRES.H içindeki çerçeve tarafından sağlanır. Komut herhangi bir menüye eklenebilir, ancak genellikle Dosya menüsüne eklenir.
Belgenizin ileti eşlemesine aşağıdakileri el ile ekleyin:
ON_COMMAND(ID_FILE_SENDMAIL, &CMyDoc::OnFileSendMail) ON_UPDATE_COMMAND_UI(ID_FILE_SENDMAIL, &CMyDoc::OnUpdateFileSendMail)
Not
Bu ileti eşlemesi, veya
COleDocument
öğesindenCDocument
türetilen bir belge için çalışır; ileti eşlemesi türetilmiş belge sınıfınızda olsa bile her iki durumda da doğru temel sınıfı alır.Uygulamanızı oluşturun.
Posta desteği varsa, MFC ile menü öğenizi OnUpdateFileSendMail
etkinleştirir ve komutu ile OnFileSendMail
işler. Posta desteği yoksa, MFC kullanıcı tarafından görüntülenmemesi için menü öğenizi otomatik olarak kaldırır.
İpucu
daha önce açıklandığı gibi ileti eşleme girdilerini el ile eklemek yerine sınıf Sınıfı Sihirbazı'nı kullanarak iletileri işlevlere eşleyebilirsiniz. Daha fazla bilgi için bkz . İletileri İşlevlere Eşleme.
İlgili bilgiler için bkz. MAPI'ye genel bakış.
MAPI'yi CDocument
etkinleştiren üye işlevleri hakkında daha fazla bilgi için bkz: