1

Тема: AHK: Перехват сообщений Excel

Здравствуйте,

Скрипт считывает информацию из файлов Excel.
При создании объекта Excel,


Xl := ComObjGet(A_LoopFileLongPath)

в некоторых случаях выскакивают предупреждения, например о круговых ссылках (см. скриншот).
Можно ли их отловить из тела скрипта?
WinWait не подходит, ибо скрипт останавливается на MsgBox с предупреждением в ожидании реакции пользователя.
Try ... Catch не подходит, ибо сообщение об ошибке не генерируется.
Пробовал таймером с IfWinExist, но его исполнение не начинается при появлении MsgBox, даже при установке найвысшего приоритета.
Можно, конечно, вопрос решить при помощи отдельного скрипта, но как - то некрасиво

Post's attachments

2020-06-28_222528.jpg
2020-06-28_222528.jpg 21.49 kb, file has never been downloaded. 

You don't have the permssions to download the attachments of this post.

2

Re: AHK: Перехват сообщений Excel

Не разбирался подробно, но можно попробовать такой таймер:

DllCall("SetTimer", "Ptr", A_ScriptHwnd, "Ptr", id := 1, "UInt", 500, "Ptr", RegisterCallback("MyTimer", "F"))
MsgBox, test
Return

MyTimer() {
   static i := 0
   ToolTip % ++i
}
Разработка AHK-скриптов:
e-mail dfiveg@mail.ru
Skype dmitry_fiveg

3

Re: AHK: Перехват сообщений Excel

equipment66 пишет:

Можно, конечно, вопрос решить при помощи отдельного скрипта, но как - то некрасиво

А чего некрасивого-то?

4 (изменено: equipment66, 2020-06-29 23:42:03)

Re: AHK: Перехват сообщений Excel

Нет, не проходит. Тут, наверное, дело в том, что в принципе происходит нормальный процесс открытия экселя, просто он прерывается в ожидании действия пользователя. И пока ответ пользователя не получен, новые таймеры не запускаются.
Тут надо бы, чтобы подобные события обрабатывал Try ... catch, после некоторого времени ожидания.

Отдельный скрипт внезапно становиться привлекательным.

Спасибо за помощь!

5

Re: AHK: Перехват сообщений Excel

Malcev

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

6

Re: AHK: Перехват сообщений Excel

http://forum.script-coding.com/viewtopi … 42#p139142