Здравствуйте! Столкнулся с такой проблемой. В начале скрипта мне нужно активировать главное окно программы "WIDI Professional" (распознавание музыки). Вроде бы должно быть все просто.
Но... Если окно этой WIDI уже было раскрыто на рабочем столе, оно действительно активируется, а вот если было свернуто в панель задач, ничего не происходит. Операционная система Win7. WinActivate в обоих случаях возвращает правильный хендл окна. Что странно, такой же код в AutoHotKey работает нормально. Следует сказать, что с другими программами (Проводник, Блокнот и т.д.) все идеально работает, но не с WIDI. Подскажите, в чем может быть проблема.
Что еще заметил... Если все программы при свертывании свертываются по направлению панели задач (анимация), то окно WIDI свертывается в направлении своего центра. Если я использую WinSetState и @SW_SHOW, свернутое окно активируется, но перестает работать его кнопка свертывания. Возможно ли, что программа сама программирует процесс свертывания/развертывания? Тогда возможно, что по WinSetState система покажет окно, но сама программа считает, что свернута и поэтому не реагирует на кнопку свертывания? Была у меня идея в скрипте просто кликнуть на значок этой WIDI в панели задач. Но для Win7 не нашел такой возможности. Кто-нибудь поможет?
Код:
Global Const $MainWindowTitle = "WIDI Professional"
Global $MainWindowHandle
If WinExists($MainWindowTitle) Then
$MainWindowHandle = WinActivate($MainWindowTitle)
EndIf
Но... Если окно этой WIDI уже было раскрыто на рабочем столе, оно действительно активируется, а вот если было свернуто в панель задач, ничего не происходит. Операционная система Win7. WinActivate в обоих случаях возвращает правильный хендл окна. Что странно, такой же код в AutoHotKey работает нормально. Следует сказать, что с другими программами (Проводник, Блокнот и т.д.) все идеально работает, но не с WIDI. Подскажите, в чем может быть проблема.
Что еще заметил... Если все программы при свертывании свертываются по направлению панели задач (анимация), то окно WIDI свертывается в направлении своего центра. Если я использую WinSetState и @SW_SHOW, свернутое окно активируется, но перестает работать его кнопка свертывания. Возможно ли, что программа сама программирует процесс свертывания/развертывания? Тогда возможно, что по WinSetState система покажет окно, но сама программа считает, что свернута и поэтому не реагирует на кнопку свертывания? Была у меня идея в скрипте просто кликнуть на значок этой WIDI в панели задач. Но для Win7 не нашел такой возможности. Кто-нибудь поможет?