Программный доступ к «Оффлайн адресной книге» с помощью Redemption - PullRequest
2 голосов
/ 20 февраля 2010

Как получить доступ к «Автономной адресной книге» (с сервера Exchange / Outlook, настроенного для обмена машиной) с использованием Redemption dll (C #).

Я ищу пример кода для продолжения моей задачи.

Ответы [ 3 ]

2 голосов
/ 25 февраля 2010

Попробуй это. Я использую погашение 4.6. Я создал форму и добавил DataGridView для просмотра результатов. Вот мой код:

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;

namespace TestingJojoWinForms
{
public partial class frmRedemption : Form
{
    public frmRedemption()
    {
        InitializeComponent();
    }

    private void frmRedemption_Load(object sender, EventArgs e)
    {
        DataTable dtResult = new DataTable("Result");
        dtResult.Columns.Add("EntryID");
        dtResult.Columns.Add("FirstName");
        dtResult.Columns.Add("LastName");
        dtResult.Columns.Add("Alias");
        dtResult.Columns.Add("SMTPAddress");
        dtResult.Columns.Add("JobTitle");
        dtResult.Columns.Add("Address");
        dtResult.Columns.Add("StreetAddress");

        Redemption.RDOSessionClass session = new Redemption.RDOSessionClass();
        session.Logon(@"your_account_name", "your_password", false, false, 0, false);
        for(int index = 1; index <= session.AddressBook.GAL.AddressEntries.Count; index++) 
        {
            Redemption.RDOAddressEntryClass entry = (Redemption.RDOAddressEntryClass)session.AddressBook.GAL.AddressEntries.Item(index);
            dtResult.Rows.Add(entry.EntryID, entry.FirstName, entry.LastName, entry.Alias, entry.SMTPAddress, entry.JobTitle, entry.Address, entry.StreetAddress);
        }
        session.Logoff();

        this.dataGridView1.DataSource = dtResult;
    }


}
}

Результат будет таким: alt text

0 голосов
/ 23 февраля 2010

Было бы полезно быть более конкретным в вашем вопросе.

«Автономная адресная книга» автоматически управляется Outlook как кэшированная копия списка глобальных адресов Exchange, см. Статью КБ .

Если вам нужен доступ к элементу адресной книги, используйте объект SafeContact из Redemption. Тот факт, что Oulook кэшировал контактную информацию, должен быть прозрачен для пользователя.

В пользовательском интерфейсе Outlook мало что можно сделать в отношении автономной адресной книги. Ваш вопрос означает программно вызвать обновление адресной книги? Например, в Outlook 2010 на вкладке «Отправить / получить», в группе «Отправить и получить», в раскрывающемся списке «Группы отправки и получения» загрузить адресную книгу?

0 голосов
/ 22 февраля 2010

Извините, это не очень хороший ответ, но я бы отправил электронное письмо Дмитрию Стреблеченко (разработчику библиотеки Redemption) - он всегда был быстрым и очень полезным.

Его адрес электронной почты находится на веб-сайте выкупа: http://www.dimastr.com/redemption/

...