Получение учетной записи электронной почты outlook по умолчанию с использованием Redemption

Просто пытаюсь обойти меня, используя Redemption; У меня есть следующий код для извлечения RDOAccounts (учетных записей электронной почты) из профиля по умолчанию:

Profiles profiles = (Profiles)Activator.CreateInstance(Type.GetTypeFromProgID("ProfMan.Profiles"));
Profile defaultProfile = profiles.DefaultProfile;           
//open a RDOSession for this profile
RDOSession session = RedemptionLoader.new_RDOSession();
session.Logon(defaultProfile.Name);
RDOAccounts accounts = session.Accounts;

Там, где я застрял, я пытаюсь определить, какой из объектов RDOAccount установлен в качестве учетной записи электронной почты по умолчанию - кажется, что в объекте нет какого-либо свойства, которое я мог бы использовать, чтобы определить, является ли оно значением по умолчанию или нет.

Кто-нибудь делал это раньше?

3 ответа

Решение

Используйте коллекцию RDOSession.Accounts, в частности метод RDOAccounts.GetOrder: http://www.dimastr.com/redemption/RDOAccounts.htm

Я думаю, что это работает - но если у кого-то есть более изящное решение, я хотел бы услышать это!

RDOAccount defaultAccount = session.GetDefaultFolder(rdoDefaultFolders.olFolderInbox).Store.StoreAccount;            

Использовать RDOSession.Accountsсборник, в частности RDOAccounts.GetOrderметод.

Другие вопросы по тегам