Outlook зависает при импорте vcfs, имея огромное количество контактов

Я пытаюсь импортировать кучу vcf файлов в мой внешний вид, в котором уже более 7 тыс. Контактов. Но, как уже сказано в заголовке, outlook зависает после импорта 1-2 vcf-файлов, и он не возвращается в нормальное состояние, я должен убить его и перезапустить, прежде чем он снова заработает нормально. С чистым внешним видом и меньшим количеством контактов (100-200) эта проблема не появится, и все в порядке, но с таким огромным количеством контактов она просто больше не будет работать.

        Microsoft.Office.Interop.Outlook.Application OutlookApplication = new Microsoft.Office.Interop.Outlook.Application();
        Microsoft.Office.Interop.Outlook.ContactItem contact;
        int count = 0;
        string[] files = Directory.GetFiles(@"C:\vcf", "*.vcf");
        foreach (string file in files)
        {
            Console.WriteLine(count++);
            contact = OutlookApplication.Session.OpenSharedItem(file) as Microsoft.Office.Interop.Outlook.ContactItem;
            contact.Save();
        }

Я не уверен, что я мог бы сделать, чтобы предотвратить возникновение этой проблемы, так как код уже небольшой и просто выполняет основные функции, открывает vcf и сохраняет его в outlook.

Редактировать:

После того, как я добавил задержку в 1 сек после контакта.Save(); кажется, работает лучше, но я не слишком уверен, почему?

0 ответов

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