|
MS Outlook повесить программное событие на создание письма/заметки?
|
|||
---|---|---|---|
#18+
Можно ли средствами VBA внутри Оутлука 2010+ это както сделать? Стандартное событие объекта Application_ItemLoad не позволяет работать с объектом, видимо потому что отрабатывает оно перед инициализацией создаваемого объекта, - проперти/методы объекта кроме Item.Class невозможно использовать, ошибка валится. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.05.2020, 10:02 |
|
MS Outlook повесить программное событие на создание письма/заметки?
|
|||
---|---|---|---|
#18+
ldfanate, Что сделать-то хотите в итоге? Application_ItemLoad прекрасно отслеживает создание элементов и его типы. Но да - т.к. это всего лишь загрузка элемента и событие происходить до его полного создания, то методы и свойства не доступны. Чтобы как-то помочь надо иметь представление о том, что хотите вообще сделать с новым пустым элементом после того, как отследили его создание. Иначе сложно что-то вообще предложить. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.05.2020, 11:18 |
|
MS Outlook повесить программное событие на создание письма/заметки?
|
|||
---|---|---|---|
#18+
пытаюсь сделать некий интерактив с Оутлуком из командной строки. Т.е. выполняю например вызов уже открытого оутлука, чтобы создать письмо из командной строки Код: sql 1.
событие Application_ItemLoad ессно ловится, но нужно после открытия болванки письма в оутлуке выполнить некую программную автоматическую постобработку наполнения этого письма. Через Item события работать с письмом не даёт. Вторичный таймер поставить в событии, чтобы ну например через 1сек после создания письма таймер бы инициировал его постобработку, так понимаю тоже нельзя, т.к. в объектной модели оутлука нету OnTimer. Открывать для этого дополнительный OLE-экземпляр ну например экселя, в котором таймер есть, - както жирно. Хотелось бы все алгоритмы сделать только внутри VBA Оутлука, не нагораживая дополнительных приложений. Да и не факт что сработает, ведь в событие Item передаётся ByVal - нет уверенности, что когда после события объект полностью создастся, объектная переменная будет корректной. В оутлуках до 2010го был удобный консольный параметр /mИмяМакроса который бы решил задачу влоб. Но в новых его нету. Вот както так хотелось бы извернуться, чтобы всё отработало в оутлуке. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.05.2020, 12:00 |
|
MS Outlook повесить программное событие на создание письма/заметки?
|
|||
---|---|---|---|
#18+
ldfanate, т.е. как возможный способ решения видится - при старте оутлука (в событии OnStart) повесить программную обработку событий создания любых карточек писем, тогда оно будет срабатывать в т.ч. от консольной команды. И тогда по доп.критерию (ну например по томуже /m ) вылавливать "свои" письма. Т.е. можно ли например public withEvents чтото из объектой модели так объявить в нём-же, чтобы ловить хоть какието события, связанные с созданием карточек в оутлуке? ... |
|||
:
Нравится:
Не нравится:
|
|||
08.05.2020, 13:14 |
|
MS Outlook повесить программное событие на создание письма/заметки?
|
|||
---|---|---|---|
#18+
ldfanate, м-да...надо подумать. вменяемые варианты пока в голову не идут при таких условиях. Если только шаблон письма настроить и сделать его умолчанием ... |
|||
:
Нравится:
Не нравится:
|
|||
08.05.2020, 13:20 |
|
MS Outlook повесить программное событие на создание письма/заметки?
|
|||
---|---|---|---|
#18+
загрузить шаблон с фиксированным именем файла через консоль емнип можно. Но как на него повесить постобработку? Впринципе меня бы устроил любой способ даже хотябы поймать внутри любого события оутлука факт его вызова из консоли. Думал уже в событии Application_ItemLoad через API для текущего экземпляра процесса оутлука спросить Винду "дай мне параметры командной строки последнего запуска". Но всёравно, даже если и сработает (в чём нет уверенности, т.к. вызываю outlook /recycle чтобы в память не грузился долго второй экземпляр оутлука), всёравно у пользователя перед мордой останется созданная консолью пустышка письма, - которую надо както утилизировать. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.05.2020, 13:25 |
|
MS Outlook повесить программное событие на создание письма/заметки?
|
|||
---|---|---|---|
#18+
ну вобщем получается кустомную форму сделать-опубликовать и вызвать через /c Но вот беда, - среди доступных контролов, которые можно влепить на такую форму, нет ни одного таймера, который бы мог вызвать какойнибудь макрос, который бы эту форму прибил и выполнил необходимую прочую постобработку. Timer control был так понимаю только в библиотеке MSVB6, а она только 32битная. Есть ли подобный контрол под 64битные винды типа 8.1-10 ? ... |
|||
:
Нравится:
Не нравится:
|
|||
09.05.2020, 13:22 |
|
MS Outlook повесить программное событие на создание письма/заметки?
|
|||
---|---|---|---|
#18+
о, нашёл вариант https://www.sql.ru/forum/1313566/klass-taymera-vb6-vba?hl=timer надо попробовать. Про возможность создавать таймеры чисто средствами WinAPI чтото не додумался. ... |
|||
:
Нравится:
Не нравится:
|
|||
09.05.2020, 13:40 |
|
|
start [/forum/topic.php?fid=61&tid=2171884]: |
0ms |
get settings: |
9ms |
get forum list: |
14ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
46ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
39ms |
get tp. blocked users: |
1ms |
others: | 287ms |
total: | 413ms |
0 / 0 |