Resim ekler Outlook 2003'te e-posta iletileri ve e-posta adresi ilgili kişi adres defteri girişleri ile ilişkili adlandırılmış özellikleri nasıl kullanılır

Makale çevirileri Makale çevirileri
Makale numarası: 912237 - Bu makalenin geçerli olduğu ürünleri görün.
Bu makale arşivlenmiştir. "Olduğu gibi" sunulmaktadır ve bundan sonra güncelleştirilmeyecektir.
Hepsini aç | Hepsini kapa

Bu Sayfada

Giriş

Ilgili kişi adres defterini bir Microsoft Office Outlook 2003 Service Pack 2 (SP2), yalnızca önceki Microsoft Outlook sürümlerindeki olarak özelliğidir. Bu makalede, adlandırılmış özelliklerle ilgili kişi adres defteri girdileri resim ekler Outlook 2003 SP2'deki e-posta iletileri ve e-posta adresleri ile ilişkili kullanmayı açıklamaktadır.

Daha fazla bilgi

Ilgili kişi adres defteri

Outlook 2003 SP2'de bulunan sözleşme Adres Defteri'ni contab32.dll sağlayıcısıdır. Bu sağlayıcı bilgileri bir <a0>Kişiler</a0> klasöründen, ilgili kişi Adres Defteri'nin bir formda görüntüler. Sağlayıcı adresine e-posta iletileri için ilgili kişi adres defterindeki kişileri kullanın böylece bunu yapar. E-posta adresi veya faks numarası olan tüm ilgili kişileri ilgili kişi adres defterinde ayrı listesini her e-posta adresi veya faks numarası gösterilir. Ilgili kişi için üç e-posta adresi olabilir ve üç faks numaralarını kişi adres defterindeki en fazla altı ayrı girdiler olarak her kişi bu nedenle gösterilemeyecek.

E-posta iletileri için ilgili kişi adres defteri girişleri bağlamak hakkında

Bir ilgili kişi adres defteri girdisi, bir alt ilgili kişi için temel alınan e-posta iletisindeki bilgileri bilgilerdir. Aşağıdaki CONTAB_ENTRYID yapısını temel iletisine türetildiği kişi adres defteri girdisi belirlemek için kullanılır.

Tanım# Pragma pack(4) typedef yapı _contab_entryid
#pragma pack(4)
typedef struct _contab_entryid
{
  BYTE misc1[4];
  MAPIUID misc2;
  ULONG misc3;
  ULONG misc4;
  ULONG misc5;
  // EntryID of contact in store.
  ULONG cbeid;
  BYTE abeid[1];
} CONTAB_ENTRYID, *LPCONTAB_ENTRYID;
#pragma pack()
The CONTAB_ENTRYID yapısı, ilgili kişi adres defterinde kullanılan girişi, bu kimlikler IMailUser nesneleri biçimini tanımlar. Bu tür giriş kimliklerinden biri veya her ikisi de aşağıdaki kaynaklardan edinebilirsiniz:
  • Ilgili kişi Adres Defteri'ni içindekiler tablosu PR_ENTRYID sütun
  • Ilgili kişi adres defterinden açıldığında IMailUser nesnenin PR_ENTRYID özelliği
Temel alınan iletiyi açmak için <a0></a0>, bu yapı için ilgili kişi adres defteri girdisi KIMLIĞI typecast. Daha sonra cbeid ve abeid üyeleri ilgili çubuğundaki giriş KIMLIğI olarak kullanın.

ÖrnekMicrosoft, programlama örneklerini yalnızca gösterim amacıyla sağlar; örtülü veya açık garanti vermez. Buna satılabilirlik veya belirli bir amaca uygunluk zımni garantileri de dahildir, ancak bunlarla sınırlı değildir. Bu makale, gösterilen programlama dilini ve yordamları oluşturmak ve hata ayıklamak amacıyla kullanılan araçları kullanmayı bildiğinizi varsayar. Microsoft destek mühendisleri, belirli bir yordamın işlevselliğinin açıklanmasına yardımcı olabilir, ancak gereksinimlerinizi karşılamaya yönelik olarak ek işlevsellik sağlamak veya yordamlar geliştirmek amacıyla bu örnekleri değiştirmezler.
HRESULT HrOpenContact(
  LPMAPISESSION lpSession,
  ULONG cbEntryID,
  LPENTRYID lpEntryID,  
  ULONG ulFlags,
  LPMESSAGE* lpContactMessage)
{
  ULONG ulObjType = NULL;
  if (sizeof(CONTAB_ENTRYID) > cbEntryID)
      return MAPI_E_INVALID_PARAMETER;
  LPCONTAB_ENTRYID lpContabEID = (LPCONTAB_ENTRYID) lpEntryID;
  HRESULT hRes = lpSession->OpenEntry(
      lpContabEID->cbeid,
      (LPENTRYID) lpContabEID->abeid,
      NULL,
      ulFlags,
      &ulObjType,
      (LPUNKNOWN*) lpContactMessage);
  return hRes;
}

Nasıl kişi adres defteri girdileri, e-posta adreslerine ilişkilendirilir.

Bir <a0>ilgili kişi adres defteri</a0> iletisinde e-posta adreslerini erişim yalnızca temel alınan bir iletideki adlandırılmış özellikleri aracılığıyla yoludur. Burada belgelenen özellikleri salt-okunur özellikler var. Outlook 2003 için bu özellikleri çözümleri desteklemez.

Tanımları
DEFINE_OLEGUID(PSETID_Address, MAKELONG(0x2000+(0x04),0x0006),0,0);
#define dispidEmailAddrType 0x8082
#define dispidEmailEmailAddress 0x8083
#define dispidEmail2AddrType 0x8092
#define dispidEmail2EmailAddress 0x8093
#define dispidEmail3AddrType 0x80A2
#define dispidEmail3EmailAddress 0x80A3
DEFINE_OLEGUID(PSETID_Address, MAKELONG(0x2000+(0x04),0x0006),0,0); #define dispidEmailAddrType 0x8082 #define dispidEmailEmailAddress 0x8083 #define dispidEmail2AddrType 0x8092 #define dispidEmail2EmailAddress 0x8093 #define dispidEmail3AddrType 0x80A2 #define dispidEmail3EmailAddress...Kullanım

Aşağıdaki sabitlerden, MAPINAMEID yapısını doldurmak için kullanabilirsiniz. Bu sabitlerin yapısının çeşitli bir alanlardır.
Bu tabloyu kapaBu tabloyu aç
SabitField
PSETID_AdresslpGuid
mnid_idulKind
DISPIDKapağı
MAPINAMEID yapısını doldurduktan sonra bu özelliklerin geçerli özellik kimliği edinmek için GetIDsFromNames yöntemi kullanın. Tüm dize özellikleri bu özelliklerdir.

ÖrnekMicrosoft, programlama örneklerini yalnızca gösterim amacıyla sağlar; örtülü veya açık garanti vermez. Buna satılabilirlik veya belirli bir amaca uygunluk zımni garantileri de dahildir, ancak bunlarla sınırlı değildir. Bu makale, gösterilen programlama dilini ve yordamları oluşturmak ve hata ayıklamak amacıyla kullanılan araçları kullanmayı bildiğinizi varsayar. Microsoft destek mühendisleri, belirli bir yordamın işlevselliğinin açıklanmasına yardımcı olabilir, ancak gereksinimlerinizi karşılamaya yönelik olarak ek işlevsellik sağlamak veya yordamlar geliştirmek amacıyla bu örnekleri değiştirmezler.
HRESULT HrGetEmail1(LPMESSAGE lpContact)
{
  HRESULT hRes = S_OK;
  LPSPropTagArray lpNamedPropTags = NULL;
  MAPINAMEID NamedID = {0};
  LPMAPINAMEID lpNamedID = &NamedID;
  NamedID.lpguid = (LPGUID)&PSETID_Address;
  NamedID.ulKind = MNID_ID;
  NamedID.Kind.lID = dispidEmailEmailAddress;
  hRes = lpContact->GetIDsFromNames(
      1,
      &lpNamedID,
      NULL,
      &lpNamedPropTags);
  if (SUCCEEDED(hRes) && lpNamedPropTags)
  {
      SPropTagArray sPropTagArray;
      sPropTagArray.cValues = 1;
      sPropTagArray.aulPropTag[0] = CHANGE_PROP_TYPE(lpNamedPropTags->aulPropTag[0],PT_STRING8);
      LPSPropValue lpProps = NULL;
      ULONG cProps = 0;
      hRes = lpContact->GetProps(
        &sPropTagArray,
        NULL,
        &cProps,
        &lpProps);
    if (SUCCEEDED(hRes) &&
      1 == cProps &&
      lpProps &&
      PT_STRING8 == PROP_TYPE(lpProps[0].ulPropTag) &&
      lpProps[0].Value.lpszA)
      {
          printf("Email address 1 = \"%s\"\n",lpProps[0].Value.lpszA);
      }
    MAPIFreeBuffer(lpProps);
    MAPIFreeBuffer(lpNamedPropTags);
  }
  return hRes;
}

Nasıl kişi adres defteri girdileri için resimleri ilişkilendirilir.

Outlook, her kişi için tek bir resim destekler. Bu resim, temel alınan iletinin eki olarak saklanır. Hangi ek resim içerdiğini belirlemek için <a0></a0>, PR_ATTACHMENT_CONTACTPHOTO özelliğini kullanın. Burada belgelenen özellik bir salt okunur özelliktir. Outlook, bu özellik için yazma çözümleri desteklemez.

Tanım

#define PR_ATTACHMENT_CONTACTPHOTO PROP_TAG( PT_BOOLEAN, 0x7FFF)
Kullanım

PR_ATTACHMENT_CONTACTPHOTO özelliği IMessage::GetAttachmentTable elde edilir ek tablosunda sütun olarak erişilebilir. PR_ATTACHMENT_CONTACTPHOTO özelliği Getıdsfromnames nesnesindeki bir özelliği olarak erişebilirsiniz. PR_ATTACHMENT_CONTACTPHOTO özelliğinin değeri true ise, ekin kişi resmini içerir. Resmi, .jpeg dosya olarak depolanır. Bu ek bir dosya ayıklamak için tipik MAPI yöntemlerini kullanın.

Referanslar

Daha fazla bilgi için aşağıdaki Microsoft Web sitelerini ziyaret edin:
http://msdn2.microsoft.com/en-us/library/bb905282.aspx
http://msdn2.microsoft.com/en-us/library/bb820925.aspx
http://msdn2.microsoft.com/en-us/library/bb821181.aspx

Özellikler

Makale numarası: 912237 - Last Review: 13 Şubat 2014 Perşembe - Gözden geçirme: 2.1
Bu makaledeki bilginin uygulandığı durum:
  • Microsoft Office Outlook 2003, Ne zaman ne ile kullanilir:
    • Microsoft Office 2003 Service Pack 2
Anahtar Kelimeler: 
kbnosurvey kbarchive kbmt kbhowto KB912237 KbMttr
Machine-translated Article
ÖNEMLİ: Bu makale, bir kişi tarafından çevrilmek yerine, Microsoft makine-çevirisi yazılımı ile çevrilmiştir. Microsoft size hem kişiler tarafından çevrilmiş, hem de makine-çevrisi ile çevrilmiş makaleler sunar. Böylelikle, bilgi bankamızdaki tüm makalelere, kendi dilinizde ulaşmış olursunuz. Bununla birlikte, makine tarafından çevrilmiş makaleler mükemmel değildir. Bir yabancının sizin dilinizde konuşurken yapabileceği hatalar gibi, makale; kelime dağarcığı, söz dizim kuralları veya dil bilgisi açısından yanlışlar içerebilir. Microsoft, içeriğin yanlış çevrimi veya onun müşteri tarafından kullanımından doğan; kusur, hata veya zarardan sorumlu değildir. Microsoft ayrıca makine çevirisi yazılımını sıkça güncellemektedir.
Makalenin İngilizcesi aşağıdaki gibidir:912237

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com