Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » AutoIt » AutoIt Based Post-Install Wizard

Ответить
Настройки темы
AutoIt Based Post-Install Wizard

Аватара для Nik_rus

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


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

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


Изменения
Автор: Nik_rus
Дата: 22-08-2009
Вложения
Тип файла: rar AutoInstall.rar
(16.5 Kb, 82 просмотров)
Версия 1.2 - бета, done.
How-to для ини файла внутри - conf-readme.ini
Что реализовал смотрим снизу
Немного увеличелось время подгрузки - ModernMenuRaw.au3 громоздкий однако

*Now version*
1.2-beta

*Future list*
  1. KillTimeOut
  2. Прога для создания ini файла
  3. Проверка на всякие ошибки - сделано по возможности
  4. Трэй - менюшка, чтоб не смотря на окно можно было посмотреть что установилось \ сколько осталось и прочую инфу (с иконками менюшка !) - сделано
  5. Собственно относительный просчет в % оставшегося \ сделанного - немного изврата и вуаля
  6. Режим "тихий" , без гуи окна - сделано
  7. Возможность выбора - показывать\не показывать трей - сделано
  8. Возможность выбора устанавливаемых программ - сделано
  9. Пауза при инстале
  10. Настраиваемое место между чекбоксами - сделано
  11. Смена шрифта (рамер, ширина,мод(2-Italic,4-Underlined,9-Strike), название фонта) - сделано
  12. Ребут после инсталла - сделано

-------
Бу! Мерзкий любитель кенгуру!

Это сообщение посчитали полезным следующие участники:

Отправлено: 22:01, 20-08-2009

 

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


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

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


Писал давно что-то подобное для себя.
Выглядит примерно так:
Код: Выделить весь код
#include <ButtonConstants.au3>
#include <GUIConstantsEx.au3>
#include <StaticConstants.au3>
#include <WindowsConstants.au3>
$hKoeff=23;высота строки (Лень было делать 2 колонки, так что я просто уплотнил список...)
$path=where_am_I();Ищем букву диска, с которого запущена WPI
dim $Checkbox[50],$Label[50];массивы идентификаторов для гуя
$num_of_files=IniReadSectionNames($path&"\soft\il.ini");Читаем список софта
$Form1 = GUICreate("Йа устанавливалко", 272,$hKoeff*$num_of_files[0], 3, 3,-1,$WS_EX_TOPMOST);Рисуем окошко
for $i=1 to $num_of_files[0]
	$Checkbox[$i]=GUICtrlCreateCheckbox("", 8, $i*$hKoeff-27, 17, 25);Рисуем чекбоксы
	if IniRead($path&"\soft\il.ini",$num_of_files[$i],"status_install","")=1 Then GUICtrlSetState($Checkbox[$i],$GUI_CHECKED);Обязательные к установке программы получают прочеканные чекбоксы
	$Label[$i]=GUICtrlCreateLabel($num_of_files[$i], 30, $i*$hKoeff-21, 225, 17);Рисуем метки для названий программ
Next
GUISetState(@SW_SHOW)

Sleep(10000)
for $i=1 to $num_of_files[0]
	if GUICtrlRead($Checkbox[$i])=1 Then RunWait(IniRead($path&"\soft\il.ini",$num_of_files[$i],"path",""));Ставим программы из папки "soft" по списку из файла "il.ini" (Структура файла приведена ниже)
	GUICtrlSetState($Checkbox[$i],$GUI_DISABLE);контролы установленных программ отмечаются как disabled (серыми становятся в списке) 
	GUICtrlSetState($Label[$i],$GUI_DISABLE)
Next

Func where_am_I()
	$drv=DriveGetDrive('all')
	for $i=1 to $drv[0]
		if $drv[$i]<>'a:' And FileExists($drv[$i]&'\boot.bin') Then Return $drv[$i];Ищем файл-идентификатор на всех дисках и возвращаем его букву
	Next
	Exit	
EndFunc
Структура файла il.ini:
[Название_программы]
path=Имя_файла.exe
status_install=1(Если 0 - чекбокс будет неотмеченным и программа по умолчанию не будет установлена)
P. S. Программы из списка должны быть самоустанавливающимися.

-------
Информация для размышления
Такому в вузах не научат


Отправлено: 04:06, 21-08-2009 | #2



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Аватара для Nik_rus

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


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

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


У меня примерно так же тока массивы не фиксированные и скомпиленый он тоже работает как и не скомпиленый (т.е. в скрипте ниче менять не надо.
Тока вот вопрос : как бы отключить TreeView чтобы пользователь не мог ничего отмечать ? (у меня стиль TreeView = 0x100)
Если кто ответит хотя я сомневаюсь сделаю возможность выбора (пока только по порядку)
И еще надо бы его покрасивей сделать, видел UDF Icons, там можно задавать PNG - оч удобно и не пропадают.

-------
Бу! Мерзкий любитель кенгуру!


Отправлено: 11:05, 21-08-2009 | #3


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


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

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


Цитата Nik_rus:
Тока вот вопрос : как бы отключить TreeView чтобы пользователь не мог ничего отмечать ? »
А в чем проблема? GUICtrlSetState($TreeViewID,$GUI_DISABLE) гарантированно отключит элемент и ничего поменять не сможешь...

-------
Информация для размышления
Такому в вузах не научат


Отправлено: 14:45, 21-08-2009 | #4


Аватара для Nik_rus

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


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

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


Хе попробую, просто я @SW_DISABLE пробовал и не получалось

Блин, чета у меня не получается его отключить
Код: Выделить весь код
GUISetState($tree,$GUI_DISABLE)

-------
Бу! Мерзкий любитель кенгуру!


Отправлено: 15:04, 21-08-2009 | #5


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


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

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


GUICtrlSetState($tree,$GUI_DISABLE) !!!

-------
Информация для размышления
Такому в вузах не научат


Отправлено: 16:12, 21-08-2009 | #6


Аватара для Nik_rus

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


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

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


АААА, спасибо что просветил, я б в жизни не додумался

-------
Бу! Мерзкий любитель кенгуру!


Отправлено: 16:13, 21-08-2009 | #7


Аватара для FlatX007

Ветеран


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

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


Да ещё WPI создаёт LOG во время установки ... если установка прервётся он начнёт ставить с того компонента который неуспел поставится.

Отправлено: 18:22, 21-08-2009 | #8


Аватара для Nik_rus

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


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

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


Да-да, это конечно нужно, но я пока над самой первой версией работаю, мне еще топать и топать до WPI
но я их перетопчу все ети wpi и прочие каки

-------
Бу! Мерзкий любитель кенгуру!


Отправлено: 18:34, 21-08-2009 | #9


Аватара для Nik_rus

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


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

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


Собсно первая версия - налетай и круши

-------
Бу! Мерзкий любитель кенгуру!


Отправлено: 19:34, 21-08-2009 | #10



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » AutoIt » AutoIt Based Post-Install Wizard

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
POST-сигнал и POST-code нормально. Загрузка есть. Монитор не "светит". yurfed Непонятные проблемы с Железом 2 05-01-2013 19:14
Прочие - [addon] Запуск Windows Post-Install Wizard посредством SVCPACK SerG63rus Наборы обновлений для Windows XP/2003/Windows 7 8 18-06-2012 00:23
VLAN potr-based on HP 2824 Yustus Сетевые технологии 4 24-05-2006 10:39
Вопрос по Access-based Enumeration Angry Demon Microsoft Windows NT/2000/2003 1 03-05-2006 09:44
Набор программ для post-install TbMA Автоматическая установка Windows 2000/XP/2003 3 23-06-2005 00:49




 
Переход