#include <GuiToolBar.au3> ; UDF указываются в верху, а не в центре.
Local $okno, $hToolbar
Sleep(7000)
BlockInput(1)
Run('c:\Owen\opm.exe c:\Owen\1.opm');
Sleep(500)
WinSetState("", "", @SW_MAXIMIZE) ; максимизе чего? первое попашееся под руку?
WinActivate("[Last]", "") ; Это от предыдущего вызова, первое попашееся под руку?
; Вообще тут WinActivate при успехе возвращает дескриптор, и получать его дополнительно функцией WinGetHandle не требуется.
; А если возвращает 0 то предусмотреть выход программы, так как всё остальное становится бессмысленным.
$okno = WinGetHandle("[ACTIVE]"); окно имеет пустой заголовок, поэтому пытаюсь выкрутится так (класс имеется? текст в окне имеется? для 100-процентности можно получить все окна и проверить соответствие конкретному размеру окна)
$hToolbar = ControlGetHandle('[CLASS:ThunderRT6FormDC]', '', '[CLASS:ToolbarWindow32; INSTANCE:1]')
Sleep(1000) ; нужно ли ждать так долго, может 100-300 достаточно
_GUICtrlToolbar_ClickButton($hToolbar, 109); жму интересующие меня кнопки
Sleep(1000) ; нужно ли ждать так долго, может 100-300 достаточно
_GUICtrlToolbar_EnableButton($hToolbar, 111, False)
Global Const $SC_CLOSE = 0xF060; деактивирую кнопку закрыть в правом верхнем углу приложения (это установка значения константы)
WinActivate($okno, "")
$hWnd = WinGetHandle("[REGEXPCLASS:Notepad.*]") ; откуда это захват?, если от WinActivate, то предыдущий уже возвращает десриптор.
_WinAPI_RemoveMenu($okno, $SC_CLOSE) ; тут могло бы быть _GUICtrlMenu_GetSystemMenu и _GUICtrlMenu_RemoveMenu
Func _WinAPI_RemoveMenu($okno, $iFlag)
Local $aMenu = DllCall("User32.dll", "hwnd", "GetSystemMenu", "hwnd", $okno, "int", 0) ; тоже что _GUICtrlMenu_GetSystemMenu
If @error Then Return SetError(1)
DllCall("User32.dll", "int", "RemoveMenu", "hwnd", $aMenu[0], "int", $iFlag, "int", 0x0) ; тоже что _GUICtrlMenu_RemoveMenu
EndFunc ;==>_WinAPI_RemoveMenu
WinSetState($okno, '', @SW_MINIMIZE)
$okno = 0
BlockInput(0) ; рекомендуется до кучи задействовать AdlibRegister на случай если скрипт повиснет, чтобы вызвать разблокироку чере 4 сек.
Exit