2009-06-12 5 views
0

Ich muss ein Steuerelement erstellen, das über die gleiche Funktionalität wie die Schaltfläche Outlook To ... in einer neuen E-Mail verfügt (dh beim Klicken wird ein modales Dialogfeld erstellt, das die gesamte globale Adressliste enthält) Listenfeld.)Präsentation der globalen Adressliste von Outlook

Ich habe keine Probleme beim Zugriff auf diese Daten, ich habe eine Liste von AddressEntries, die ich in der ListBox präsentieren möchte, aber aufgrund der Größe des Datensatzes (~ 300K Datensätze), dies erweist sich sehr schwer.

Ich möchte Streaming von 100 oder so Datensätze zu einer Zeit vermeiden, wie Outlook dies nicht tut.

Kennt jemand eine gute Möglichkeit, dies zu tun?

Wenn es hilft, ist der Code ich die Adressliste zu bekommen verwende ist:

public AddressEntries GetGlobalAddressList() 
     { 
      Outlook.Application oApp = new Outlook.Application(); 
      Outlook.NameSpace oNS = oApp.GetNamespace("mapi"); 
      oNS.Logon(Missing.Value, Missing.Value, false, true); 
      Outlook.AddressLists oDLs = oNS.AddressLists; 
      Outlook.AddressList oGal = oDLs["Global Address List"]; 
      Outlook.AddressEntry oEntry = default(Outlook.AddressEntry); 

      return oGal.AddressEntries;    

     } 

Antwort

1

Probally die easyiest Sie CDO CDO Session.AddressBook verwenden können(). oder verwenden Sie RDO AddressBook (http://www.dimastr.com/redemption/) RDO AddressBook, wenn Sie die Sicherheitsaufforderungen usw. umgehen möchten.

Marcus

Verwandte Themen