2 / 2 / 0
Регистрация: 23.03.2015
Сообщений: 77
1

Медленно работает advancedsearch()

17.05.2018, 06:00. Показов 578. Ответов 2
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Добрый день.
Делаю скрипт, который выбирает коллекцию писем из почтового ящика не старше определенного дня и ищет отправителей, переставших писать.
Для создания выборки использую этот код:
Visual Basic
1
2
3
4
5
6
7
8
    Dim sFilter As String                                 
    Dim sDate As String, sFormDate As String
    sDate = CStr(Date - iDepth)
    sFormDate = "'" + Mid(sDate, 1, 2) + "/" + Mid(sDate, 4, 2) + "/" + Mid(sDate, 7, 4) + " 12:00 AM'"
    sFilter = Chr(34) + "urn:schemas:httpmail:datereceived" + Chr(34) + " > " + sFormDate
    
    Dim oSearch As Search                              
    Set oSearch = oOutlook.AdvancedSearch(sScope, sFilter, True, "salarier")
Проблема в том, что целевой почтовый ящик лежит на сервере exchange (администраторского доступа к нему нет).
На локальном файле данных поиск отрабатывает за секунды, но на целевом ящике втупляет минут на 10 и подвешивает outlook.
Вопрос 1. Есть ли другой способ собрать коллекцию писем с удаленного ящика?

Дальше обрабатываю результаты поиска многократно обращаясь к mailitem из коллекции с результатом поиска.
При работе с целевой папкой скорость этого скрипта тоже на порядок хуже.


Вопрос 2. Ускорится ли процедура, если данные из коллекции с результатами поиска утащить в массив? Экспериментировать с целевой папкой лишний раз сложно, так как скрипт делается для другого пользователя, а он, зараза, донельзя занятой.
Вложения
Тип файла: txt Module2.txt (2.4 Кб, 2 просмотров)
Тип файла: txt ThisOutlookSession.txt (4.5 Кб, 0 просмотров)
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
17.05.2018, 06:00
Ответы с готовыми решениями:

Совместить AdvancedSearch и InputBox
Добрый день, Есть макрос который отбирает письма из Аутлука за определенную дату с помощью...

Медленно работает код
Здравствуйте. Не понимаю почему этот код For i = 3 To 1000 x =...

Медленно работает ADODB.Command
Из Excel подключаюсь к БД Oracle через msado15.dll. Работает хорошо и правильно, но медленее в 3...

Интернет работает очень медленно на одном ПК, на другом работает быстрее.
Такая проблема, интернет очень плохо работает,скорость совсем маленькая (14м) подключаю другой комп...

2
2 / 2 / 0
Регистрация: 23.03.2015
Сообщений: 77
18.05.2018, 10:20  [ТС] 2
Опытным путем выяснил, что проблема на в advancedsearch().

Очень долго выполняется копирование свойств писем.
Там в выборку попадает около 2 000 штук, и пока по четыре свойства с каждого.
Можно ли разом утащить весь набор свойств объекта? возможно это будет быстрее...
0
2 / 2 / 0
Регистрация: 23.03.2015
Сообщений: 77
21.05.2018, 10:50  [ТС] 3
Блин, ну неужели ни у кого нет внятных мыслей?
Нашел чудесный метод, который кеширует заданный набор свойств объектов:
Visual Basic
1
oResults.SetColumns("ReceivedTime, Subject, Sender")
В мануале он показан именно в таком виде, однако в моем случае компиллятор выдает ошибку "свойство неизвестно".
Кто нибудь знает, чего ему надо?
0
21.05.2018, 10:50
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
21.05.2018, 10:50
Помогаю со студенческими работами здесь

Медленно работает 1С
Наш сервер 1С находиться в Турецком заводе, но он свзяан с нашим Российским заводом, и те и те...

Медленно работает ПК
При загрузке половины памяти 16 из 32 ГБ компьютер начинает заметно медленнее работать и...

Медленно работает PC
помогите пофиксить(удалить ненужное) думаю вирусы тоже есть лагает комп эта тема и другая моя...

ПК медленно работает
Очень медленно работает ПК. Не только в интернете, но и свои папки еле открывает. Логи во вложении


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru