Laden...

Outlook - Adressbuch lesen

Erstellt von lilalaunebaer vor 15 Jahren Letzter Beitrag vor 15 Jahren 1.680 Views
lilalaunebaer Themenstarter:in
35 Beiträge seit 2008
vor 15 Jahren
Outlook - Adressbuch lesen

[EDIT=herbivore]Abgeteilt von Outlook - Adressbuch lesen[EDIT]

hey!

ich suche auch grade nach möglichkeiten an das adressbuch von outlook zu kommen.

ich habe es schon geschafft, die adressen aus einem Text-Drucker ausdruck aller AOL-Kontakte aus dem AOL9.0 Adressbuch zu extrahieren und gescheit verfügbar zu machen. (wer das haben will: kontaktiert mich!)

jetzt möchte ich aber ein programm schreiben, mit dem ich die kontakte in outlook einfügen kann; und das am besten ohne ein outlook-addin zu schreiben. und wenns nur damit geht wie kann ich sowas dann in outlook sichtbar machen? ich möchte später
auch mit dem programm arbeiten und dabei die kontakte aus outlook verwenden.
ich meine skype z.B. kann ja die daten aus outlook lesen und verwenden....

danke für jeden hinweis / post / link..

C
101 Beiträge seit 2008
vor 15 Jahren

hallo lilalaunebaer

ich habe ein Programm geschriebe, mit welchem ich über den Exchange server auf die Kontaktdaten in einem öffentlichen Ordner zugreife.
es gibt dafür mehrere Methoden. ich habe mich für ExOledb entschieden. es gibt aber auch WebDav etc.
ich poste mal meinen Code vielleicht kannst du ihn ja benützen


   string strSql;
        string sURL = "http://Servername/public/TestPublicFolder";
        ADODB.Connection oCn = new ADODB.Connection();
        ADODB.Recordset oRs = new ADODB.Recordset();
        ADODB.Fields oFields;
        ADODB.Field oField;
        oCn.Provider = "exoledb.datasource";
        oCn.Open(sURL, "Administrator", "agbadmin", 0);
        strSql = "";
        strSql = "select * from scope ('shallow traversal of " + "\"";
        strSql = strSql + sURL + "\"') WHERE \"DAV:ishidden\" = false AND \"DAV:isfolder\" = false";
        strSql = strSql + " ORDER BY \"urn:schemas:contacts:sn\" "; 


         oRs.Open(strSql, oCn,
                ADODB.CursorTypeEnum.adOpenStatic,
                ADODB.LockTypeEnum.adLockOptimistic, 1);
             

Damit solltest du zumindest auf die Daten zugreifen können

Siehe auch den Eintrag Multiple-step OLE DB operation generated errors

T
708 Beiträge seit 2008
vor 15 Jahren

Um sein eigenes Adressbuch auszulesen ist es per Microsoft.Office.Interop.Outlook möglich:

Outlook.Application oApp = new Microsoft.Office.Interop.Outlook.Application();
Outlook.MAPIFolder contacts = (Outlook.MAPIFolder)oApp.ActiveExplorer().Session.GetDefaultFolder(Outlook.OlDefaultFolders.olFolderContacts);

one.Text = foundContact.FirstName;
two.Text = foundContact.LastName;
three.Text = foundContact.Email1Address;

Simpel wie einfach 🙂

Gruß,
TriB