|
Внимание, важное сообщение: Дорогие Друзья!
В ноябре далекого 2001 года мы решили создать сайт и форум, которые смогут помочь как начинающим, так и продвинутым пользователям разобраться в операционных системах. В 2004-2006г наш проект был одним из самых крупных ИТ ресурсов в рунете, на пике нас посещало более 300 000 человек в день! Наша документация по службам Windows и автоматической установке помогла огромному количеству пользователей и сисадминов. Мы с уверенностью можем сказать, что внесли большой вклад в развитие ИТ сообщества рунета. Но... время меняются, приоритеты тоже. И, к сожалению, пришло время сказать До встречи! После долгих дискуссий было принято решение закрыть наш проект. 1 августа форум переводится в режим Только чтение, а в начале сентября мы переведем рубильник в положение Выключен Огромное спасибо за эти 24 года, это было незабываемое приключение. Сказать спасибо и поделиться своей историей можно в данной теме. С уважением, ваш призрачный админ, BigMac... |
|
| Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » AutoIt » AutoIt Based Post-Install Wizard |
|
|
AutoIt Based Post-Install Wizard
|
|
Пользователь Сообщения: 92 |
Версия 1.2 - бета, done.
How-to для ини файла внутри - conf-readme.ini Что реализовал смотрим снизу ![]() Немного увеличелось время подгрузки - ModernMenuRaw.au3 громоздкий однако *Now version* 1.2-beta *Future list*
|
|
|
------- Отправлено: 22:01, 20-08-2009 |
|
Пользователь Сообщения: 67
|
Профиль | Отправить 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
[Название_программы] path=Имя_файла.exe status_install=1(Если 0 - чекбокс будет неотмеченным и программа по умолчанию не будет установлена) P. S. Программы из списка должны быть самоустанавливающимися. |
|
------- Отправлено: 04:06, 21-08-2009 | #2 |
|
Пользователь Сообщения: 92
|
Профиль | Отправить PM | Цитировать У меня примерно так же
тока массивы не фиксированные и скомпиленый он тоже работает как и не скомпиленый (т.е. в скрипте ниче менять не надо.Тока вот вопрос : как бы отключить TreeView чтобы пользователь не мог ничего отмечать ? (у меня стиль TreeView = 0x100) Если кто ответит хотя я сомневаюсь сделаю возможность выбора (пока только по порядку)И еще надо бы его покрасивей сделать, видел UDF Icons, там можно задавать PNG - оч удобно и не пропадают. |
|
------- Отправлено: 11:05, 21-08-2009 | #3 |
|
Пользователь Сообщения: 67
|
Профиль | Отправить PM | Цитировать Цитата Nik_rus:
|
|
|
------- Отправлено: 14:45, 21-08-2009 | #4 |
|
Пользователь Сообщения: 92
|
Профиль | Отправить PM | Цитировать |
|
|
------- Отправлено: 15:04, 21-08-2009 | #5 |
|
Пользователь Сообщения: 67
|
Профиль | Отправить PM | Цитировать GUICtrlSetState($tree,$GUI_DISABLE) !!!
|
|
------- Отправлено: 16:12, 21-08-2009 | #6 |
|
Пользователь Сообщения: 92
|
Профиль | Отправить PM | Цитировать АААА, спасибо что просветил, я б в жизни не додумался
![]() |
|
------- Отправлено: 16:13, 21-08-2009 | #7 |
|
Ветеран Сообщения: 553
|
Профиль | Отправить PM | Цитировать Да ещё WPI создаёт LOG во время установки ... если установка прервётся он начнёт ставить с того компонента который неуспел поставится.
|
|
Отправлено: 18:22, 21-08-2009 | #8 |
|
Пользователь Сообщения: 92
|
Профиль | Отправить PM | Цитировать Да-да, это конечно нужно, но я пока над самой первой версией работаю, мне еще топать и топать до WPI
но я их перетопчу все ети wpi и прочие каки |
|
------- Отправлено: 18:34, 21-08-2009 | #9 |
|
Пользователь Сообщения: 92
|
Профиль | Отправить PM | Цитировать Собсно первая версия - налетай и круши
![]() |
|
------- Отправлено: 19:34, 21-08-2009 | #10 |
|
|
Участник сейчас на форуме |
|
Участник вне форума |
![]() |
Автор темы |
![]() |
Сообщение прикреплено |
| |||||
| Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
| 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 | |
|