Aracılığıyla paylaş


MFC'de MAPI Desteği

MFC, sınıfındaki CDocumentMicrosoft 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.

Bahşiş

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 ( CDocumenttü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.

Dekont

sınıfı COleDocument için geçersiz kılma sürümü OnFileSendMail bileşik belgeleri doğru şekilde işler.

MFC ile Posta Gönder komutu uygulamak için

  1. 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.

  2. 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)
    

    Dekont

    Bu ileti eşlemesi, veya COleDocument öğesinden CDocument 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.

  3. Uygulamanızı oluşturun.

Posta desteği varsa, MFC ile menü öğenizi OnUpdateFileSendMail etkinleştirir ve komutu ile OnFileSendMailişler. Posta desteği yoksa, MFC kullanıcı tarafından görüntülenmemesi için menü öğenizi otomatik olarak kaldırır.

Bahşiş

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:

Ayrıca bkz.

MAPI