morgan1991
1. зачем делать SHOW, а потом следом сразу же HIDE? если ничего не делать будет тоже самое
2. зачем нужен GUI который скрыт? ну да ладно, это не суть
Title у GUI никак не может влиять на его работоспособность. Просто дай уникальное имя окну.
к примеру, вот немного твой доработанный скрипт
Код:
#include <guiconstants.au3>
$Gui = GUICreate("My Unique title")
$Button = GUICtrlCreateButton("button1", 10, 10)
;GUISetState(@SW_SHOW, $Gui)
;GUISetState(@SW_HIDE, $Gui)
While 1
$Msg = GUIGetMsg()
If $Msg = $GUI_EVENT_CLOSE Then Exit
WEnd
запускаешь после этого второй скрипт-монитор.
Код:
$hGUI = GUICreate("Window catcher")
$hButtonCatch = GUICtrlCreateButton("Show/Hide Window", 10, 10)
GUISetState()
$sTitle = "My Unique title"
Global $flag = 1; WIndow is hide
While 1
$msg = GUIGetMsg()
Switch $msg
Case -3
ExitLoop
Case $hButtonCatch
_WinCatch()
EndSwitch
WEnd
Func _WinCatch()
Switch $flag
Case 1
WinSetState($sTitle, "", @SW_SHOW)
$flag = 0
Case 0
WinSetState($sTitle, "", @SW_HIDE)
$flag = 1
EndSwitch
EndFunc