Доброго времени суток =)
Задача: необходимо получить список групп в live messenger (LM) вместе с пользователями которые туда входят. Использую Interop.MessengerAPI (add reference и дальше выбираю COM-библиотеку). Делается это всё в 2003 студии под .net 1.1 (это так, на всякий случай, мало ли поможет).
Проблема: Список групп определяется верно, а вот пользователи которые в каждую из групп входят определяются неверно. Бывает что пользователи из группы "Собутыльники" оказываются в группе "Любовницы" или того хуже вообще отображаются как люди не входящие ни в одну из групп. Причем заметил, что если открыть LM и создать группы, поперетягивать туда ВСЕХ пользователей, то информация будет получена верно. Закрываем его, потом опять запускаем — инфа неверная

. Версия LM — 8.0 (8.0.0812.00).
Простой пример:
Получаем список имён групп. Работает нормально.
static string[] GetMessengerGroupsNames(MessengerClass msn)
{
ArrayList groupNames = new ArrayList();
foreach (IMessengerGroup group in (IMessengerGroups)msn.MyGroups)
{
groupNames.Add(group.Name);
}
return (string[])groupNames.ToArray(typeof(string));
}
Получаем список имён контактов по имени группы. Не работает.
static string[] GetMessengerGroupContactsNames(MessengerClass msn, string messengerGroupName)
{
ArrayList contactsNames = new ArrayList();
foreach (IMessengerGroup group in (IMessengerGroups)msn.MyGroups)
{
if (group.Name == messengerGroupName)
{
foreach (IMessengerContact contact in (IMessengerContacts)group.Contacts)
{
contactsNames.Add(contact.SigninName);
}
}
}
return (string[])contactsNames.ToArray(typeof(string));
}
Т.е. если судить логически, то перебирая контакты группы "Любовницы" я должен получить их всех, но такого не происходит
Что неверно и как исправить, помогите пожалуйста