Имя пользователя:
Пароль:
 

Показать сообщение отдельно

Пользователь


Сообщения: 92
Благодарности: 19

Профиль | Отправить PM | Цитировать


Есть ли возможность принудительно завершить скрипт через какое-то время, если не были приняты никакие действия?
Сейчас я делаю это через задницу. У меня есть два скрипта один из которых запускает второй и через 20 секунд прибивает его. Но хочется сделать одним скриптом и покрасивее. С прогрессбаром.

Вот код скрипта


Код: Выделить весь код
GuiCreate("Переименование учетной записи администратора", 300, 100)
$name=GUICtrlCreateInput("",25,30)
GuiCtrlCreateLabel("Введите имя Вашей учетной записи", 5, 1, 300, 10)
$rename=GuiCtrlCreateButton("Переименовать", 10, 60, 100, 30)
$chanel=GuiCtrlCreateButton("Отменить", 190, 60, 100, 30) 
$progressbar = GUICtrlCreateProgress (10,10,200,20)

; GUI MESSAGE LOOP

GuiSetState()

     For $i = 1 To 100
     GUICtrlSetData ($progressbar,(100 - $i))
     Sleep(30)
     Next
     ProcessClose("Rename_User.exe")

While 1	
     $msg = GUIGetMsg()

Select
       Case $msg = $rename
              FileCopy("RENUSER.EXE",@SystemDir)
              Sleep (1000)
              Run("RENUSER.EXE Администратор " & GUICtrlRead($name))
              Sleep (1000)
              FileDelete(@SystemDir & "\RENUSER.EXE")
           ExitLoop
       Case $msg = $GUI_EVENT_CLOSE
           ExitLoop
       Case $msg = $chanel
    ExitLoop
 EndSelect
WEnd
После завершения прогрессбара скрипт закрывается как и нужно. Но проблема в том, что он в это время не обрабатывает сообщения. Можно как-то сделать, чтобы он и сообщения обрабатывал и закрывался самостоятельно?

Отправлено: 19:09, 04-07-2008 | #699