Что нового

[Автоматизация] Как уменьшить работу админа, несколькими кликами?

R_Alexander

Новичок
Сообщения
1
Репутация
0
Привет всем. Есть листинг. Пытаюсь облегчить себе работу. В этом новичок, не обежайте. :IL_AutoIt_1:

Создается окно и выставляем галочки для инсталляции ПО. Проблема в следующем не смог придумать отслеживание завершения предыдущего процесса. Выставил через Sleep. Но не удобно и при проверки условий. Хоть и галочка не будет стоят. Проходит тайм аут для начало инсталляции. Посмотри что я не так сделал.

Код:
#include <ButtonConstants.au3>
#include <EditConstants.au3>
#include <GUIConstantsEx.au3>
#include <StaticConstants.au3>
#include <WindowsConstants.au3>
#Region ### START Koda GUI section ### Form=
$Adminka = GUICreate("Adminka", 414, 327, 198, 130)
GUICtrlCreateGroup("Установите флажок для инсталяции ПО", 8, 8, 393, 305)
$Label3 = GUICtrlCreateLabel("", 32, 88, 4, 4)
$Group1 = GUICtrlCreateGroup("Текстовые", 16, 32, 185, 97)
$Label1 = GUICtrlCreateLabel("Microsoft Office 2003", 32, 56, 105, 17)
$Checkbox1 = GUICtrlCreateCheckbox("", 176, 56, 17, 17)
$Label6 = GUICtrlCreateLabel("Adobe Reader 9.0", 32, 80, 91, 17)
$Checkbox2 = GUICtrlCreateCheckbox("", 176, 80, 17, 17)
$Label7 = GUICtrlCreateLabel("PDFXVwer", 32, 104, 56, 17)
$Checkbox3 = GUICtrlCreateCheckbox("", 176, 104, 17, 17)
GUICtrlCreateGroup("", -99, -99, 1, 1)
$Group2 = GUICtrlCreateGroup("Общение", 16, 136, 185, 161)
$Label8 = GUICtrlCreateLabel("Mail.ru Агент", 32, 160, 67, 17)
$Checkbox4 = GUICtrlCreateCheckbox("", 176, 160, 17, 17)
$Label9 = GUICtrlCreateLabel("Skype", 32, 184, 34, 17)
$Checkbox5 = GUICtrlCreateCheckbox("", 176, 184, 17, 17)
$Label10 = GUICtrlCreateLabel("Skype disable supernode", 32, 208, 123, 17)
$Checkbox6 = GUICtrlCreateCheckbox("", 176, 208, 17, 17)
$Label11 = GUICtrlCreateLabel("Psi plus 0.15.5337", 32, 232, 91, 17)
$Checkbox7 = GUICtrlCreateCheckbox("", 176, 232, 17, 17)
GUICtrlCreateInput("", 32, 256, 161, 21)
GUICtrlCreateGroup("", -99, -99, 1, 1)
$Group3 = GUICtrlCreateGroup("Другие программы", 216, 32, 169, 97)
$Label2 = GUICtrlCreateLabel("1Cv8.1", 232, 56, 38, 17)
$Checkbox8 = GUICtrlCreateCheckbox("", 360, 56, 17, 17)
$Label4 = GUICtrlCreateLabel("WinRAR 3.90.3", 232, 80, 79, 17)
$Checkbox9 = GUICtrlCreateCheckbox("", 360, 80, 17, 17)
GUICtrlCreateGroup("", -99, -99, 1, 1)
$Group4 = GUICtrlCreateGroup("Браузеры", 216, 136, 169, 81)
$Label5 = GUICtrlCreateLabel("Firefox Setup 16.0.1", 232, 160, 99, 17)
$Checkbox10 = GUICtrlCreateCheckbox("", 360, 160, 17, 17)
$Label12 = GUICtrlCreateLabel("Opera 1210", 232, 184, 60, 17)
$Checkbox11 = GUICtrlCreateCheckbox("", 360, 184, 17, 17)
GUICtrlCreateGroup("", -99, -99, 1, 1)
$Button1 = GUICtrlCreateButton("Приступить", 312, 272, 75, 25, $WS_GROUP)
GUICtrlCreateGroup("", -99, -99, 1, 1)
GUICtrlSetOnEvent($Button1, "_Start")
GUISetState(@SW_SHOW)
#EndRegion ### END Koda GUI section ###

While 1
   $nMsg = GUIGetMsg()
   Switch $nMsg
	  Case $GUI_EVENT_CLOSE
		 Exit
	  Case $Button1
		 If GUICtrlRead($Checkbox1) = $GUI_UNCHECKED And GUICtrlRead($Checkbox2) = $GUI_UNCHECKED And GUICtrlRead($Checkbox3) = $GUI_UNCHECKED And GUICtrlRead($Checkbox4) = $GUI_UNCHECKED And GUICtrlRead($Checkbox5) = $GUI_UNCHECKED And GUICtrlRead($Checkbox6) = $GUI_UNCHECKED And GUICtrlRead($Checkbox8) = $GUI_UNCHECKED And GUICtrlRead($Checkbox9) = $GUI_UNCHECKED And GUICtrlRead($Checkbox10) = $GUI_UNCHECKED And GUICtrlRead($Checkbox11) = $GUI_UNCHECKED Then
			MsgBox(0, '', 'Не выбранны файлы')
	  Else
		 If GUICtrlRead($Checkbox1) = $GUI_CHECKED Then run("t:\System\AutoIt\Script\Office.exe")
			Sleep(300000)
		If GUICtrlRead($Checkbox2) = $GUI_CHECKED Then run("t:\System\AutoIt\Script\Adobe Reader.exe")
			Sleep(300000)
		If GUICtrlRead($Checkbox3) = $GUI_CHECKED Then run("t:\System\AutoIt\Script\PDFXVwer.exe")
			Sleep(300000)
		If GUICtrlRead($Checkbox4) = $GUI_CHECKED Then run("t:\System\AutoIt\Script\Mail.ru.exe")
			Sleep(300000)
		If GUICtrlRead($Checkbox5) = $GUI_CHECKED Then run("t:\System\AutoIt\Script\Skype.exe")
			Sleep(300000)
		If GUICtrlRead($Checkbox6) = $GUI_CHECKED Then run("t:\System\AutoIt\Proga\ICQ,Jabber,Skype\skype_disable_supernode.reg")
			WinWait("Редактор реестра","Да")
			ControlClick("Редактор реестра","Да","Button1")
			WinWait("[Class:DirectUIHWND]","")
			WinClose("[ACTIVE]", "")
			Sleep(20000)			
		 If GUICtrlRead($Checkbox8) = $GUI_CHECKED Then run("t:\1Cv82\1cestart.exe")
			Sleep(3000000)
			EndIf
   EndSwitch
WEnd
 

Zaramot

I ♥ AutoIt
Сообщения
1,160
Репутация
660
Re: [Автоматизация] Упрощаем работу админа

Попробуй:
Код:
RunWait()

вместо:
Код:
Run()
 

kaster

Мой Аватар, он лучший самый
Команда форума
Глобальный модератор
Сообщения
4,020
Репутация
626
Re: [Автоматизация] Упрощаем работу админа

Предупреждение За нарушение правил форума (пункт Б.5):
Имя темы должно нести смысловую нагрузку (отражать суть вопроса/проблемы)
Правильно сформулированное название темы привлекает больше внимания, и шансы получить конкретный ответ увеличиваются.


Данные правила могут пополняться локальными правилами раздела.
Как правильно называть темы

"[Автоматизация] Упрощаем работу админа" - это неприемлемое название темы, переименуйте тему иначе она будет закрыта, а вам возможно будет выдан бан на несколько дней.

С уважением, ваш Глобальный модератор.
 
Верх