2013-11-25 9 views
2

배포 목록에서 구성원을 추출하려고합니다. 그래서, 난이 쓴, 문제는AddressEntry의 DistributionList가 AddressEntry입니까? - C#

using Outlook = Microsoft.Office.Interop.Outlook; 

Outlook.AddressLists addrLists = null; 

foreach(Outlook.AddressList addrList in addrLists) 
{ 
if(addrList.Name == "XXX-XXX-XXX-XXX") 
{ 
Outlook.AddressEntries = addrList.AddressEntries; 

foreach(Outlook.AddressEntry addrEntry in AddrEntries) 
{ 
//do something 
} 
} 

이 AddressList의에 - XXX-XXX-XXX-XXX, 일부 AddressEntry 항목 및 일부 메일 그룹도있다. addrEntry.GetExchangeDistributionList()를 수행하면 메일 그룹에 대해 AddressEntry & olOutlookDistributionListAddressEntry에 대한 olOutlookContactAddressEntry가 반환됩니다. 그러나 AddressList 내의 이러한 메일 그룹 유형은 여전히 ​​AddressEntry로 표시됩니다. 그들은 AddressEntries일까요?

도와주세요. 심각하게 차단되었습니다.

내가하려는 것은 지정된 메일 그룹에서 모든 ExchangeUser를 가져 오는 것입니다. 어쩌면 누군가가 나에게 그것을하는 다른 방법을 제안 할 수 있습니다, 책 항목이 AddressEntry 개체로 표현됩니다

Phani

+0

좀 더 구체적으로 기재 할 수 있습니까? 어떤 특정 속성이 예기치 않은 값을 반환합니까? 왜 GetExchangeDistributionList입니까? 연락처 폴더에서 만든 메일 그룹에서 실패합니다. –

+0

안녕하세요 드미트리, 답장을 보내 주셔서 감사합니다. 다른 메일 그룹에 메일 그룹이 있습니다. 메일 그룹은 AddressList로 인식되어야하지만 내부의 주소 목록은 AddressEntry로 입력됩니다. –

답변

3

모든 주소를 :)하십시오.

DL 구성원에 액세스해야하는 경우 AddressEntry.Members 컬렉션을 사용하십시오. 그러면 실제로 AddressEntires 객체가 반환됩니다. 항목이 DL이 아닌 경우 null입니다.

+0

안녕하세요. Dmitry, Outlook 2010의 Microsoft Outlook 14.0 Object Library를 사용하고 있습니다. AddressEntry.Members Office 2013에 구현되어 있지만 사용중인 라이브러리에는 없습니다. Office 2007 - http://msdn.microsoft.com/en-us/library/bb176626(v=office.12).aspx Office 2013 - http://msdn.microsoft.com/en-us/library /microsoft.office.interop.outlook.addressentry_members.aspx 정말 감사드립니다. :) 2010 Outlook에서 나에게 길을 말해 줄 수 있습니까? –

+0

Outlook 97 이후 AddressEntry.Members 속성이있었습니다. 숨겨져있을 수 있으므로 표시되지 않을 수 있습니다. Intellisense. –