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

Компьютерный форум OSzone.net » Автоматическая установка Windows » Автоматическая установка Windows 2000/XP/2003 » Альтернативный способ автоматической установки Windows XP

Ответить
Настройки темы
Альтернативный способ автоматической установки Windows XP

Старожил


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

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


Всем привет.
Я одно время долго ломал голову, как можно объединить удобство автоматической (unattended) установки Windows с функциональностью возможности выбора пользователем нужных ему компонентов. В итоге появилась одна мысль.
Я написал программу, которая запускается по DetachedProgram на 39 минуте и следит за окнами. По замыслу, как только на экране появляется диалоговое окно, на кнопку "&Далее >" вешается "таймаут" - программа ждёт заданное кол-во секунд (допустим, 5), отображая это в Caption'е кнопки ("&Далее (5) >", "&Далее (4) >"...), и затем, в случае бездействия пользователя, по истечению 5 секунд сама нажимает на неё (если пользователь начнёт "активничать" - двигать мышку или нажимать на кнопки, то она прекращает свою деятельность по отношению к текущему окну). Таким образом планировалось достичь, как я уже написал, возможности автоустановки Windows путём предварительного задавания соответствующих настроек (серийник, языковые стандарты, сеть и т.д.) и параметра UnattendMode=ProvideDefault, который бы позволил пользователю, в случае чего, что-либо поменять. Например, собственно, имя пользователя, пароль админа и т.п.
Чего я, спрашивается, сюда пишу Так вот. Я решил отлавливать появляющиеся диалоговые окна по таймеру через GetForegroundWindow, а затем, если у этого окна класс #32770, искать на нём нужную дефолтную кнопку. Но окно самого первого диалога (в режиме ProvideDefault это как раз-таки диалог выбора имени пользователя и компании), как оказалось, появляется задолго до того, как мы видим его на экране после "установки устройств" - моя программа его обнаруживает и "вытаскивает" на поверхность в самом начале этапа установки устройств. Соответствено - первый вопрос, что бы вы могли посоветовать использовать вместо этого? Была идея отлавливать WindowFromPoint с центра экрана где-нибудь раз 10 в секунду, но пока не знаю, приведёт ли это к чему-нибудь, или нет. Второй вопрос, который возник, это собственно необходимость избегания этого самого "вытаскивания" окон наверх - а может, так оно и к лучшему - чем раньше пользователь введёт данные, тем лучше? Просто я точно не знаю, куда эти диалоги отправляют введённую информацию - не слишком ли рано они будут это делать на 39 минуте.
Наверное, пока всё... Буду рад любым ответам (и вопросам)

Отправлено: 19:05, 20-04-2008

 

Аватара для Drongo

Будем жить, Маэстро...


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

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


A.A.Z.,
Цитата A.A.Z.:
Таким образом планировалось достичь, как я уже написал, возможности автоустановки Windows путём предварительного задавания соответствующих настроек (серийник, языковые стандарты, сеть и т.д.) »
Если удастся закончить Ваш проэкт, то это будет классно! Я не спец и знаний не хватает, но думаю, что всё получится. Тем более основная часть написана, остался некоторый ряд частных вопросов. У меня единственный вопрос, не очень относящийся к сути, Ваша программа, она 32-разрядная?!

-------
Правильная постановка вопроса свидетельствует о некотором знакомстве с делом.
3нание бывает двух видов. Мы сами знаем предмет — или же знаем, где найти о нём сведения.
[Quick Killer 3.0 Final [OSZone.net]] | [Quick Killer 3.0 Final [SafeZone.cc]] | [Парсер логов Gmer] | [Парсер логов AVZ]

http://tools.oszone.net/Drongo/Userbar/SafeZone_cc.gif


Отправлено: 19:33, 20-04-2008 | #2



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

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


Аватара для d petr

Ветеран


Автор проектов


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

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


A.A.Z., Нечто подобное есть в этой теме. Там же можете и спросить у автора что и как.

Отправлено: 19:33, 20-04-2008 | #3


Старожил


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

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


Цитата Drongo:
У меня единственный вопрос, не очень относящийся к сути, Ваша программа, она 32-разрядная?! »
Конечно Но 64-разрядную сделать будет не трудно, я думаю.
Цитата d petr:
Нечто подобное есть в этой теме. Там же можете и спросить у автора что и как. »
Спасибо, но там автор подменял сам установщик и работал с .sif'ом напрямую, а я всего лишь "заменяю" действия пользователя

Отправлено: 19:43, 20-04-2008 | #4


(*.*)


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

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


A.A.Z., в принципе, можно было бы сделать мультизагрузку - FullUnattended и ProvideDefault.

-------
Канал Windows 11, etc | Чат @winsiders


Отправлено: 21:32, 20-04-2008 | #5


Старожил


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

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


Цитата Vadikan:
в принципе, можно было бы сделать мультизагрузку - FullUnattended и ProvideDefault. »
Вообще конечно да, но так более интересно Я собираюсь сделать сборку, которая будет устраивать как людей, которые не разбираются в этом во всём, так и более-менее продвинутых пользователей. Поэтому решил применить какое-нибудь изящное решение. Хотя идея с мультизагрузкой, наверное, самая простая в данной ситуации

[upd] В теории (пока что) можно будет в некоторых ситуациях отказываться от winnt.sif, чтобы сохранить консоль восстановления Я сейчас хочу заняться тем, чтобы понять, куда установка Windows, собственно, суёт все параметры из winnt.sif - может, их все можно будет "эмулировать" непосредственно в графическом этапе. Когда закончу - отпишусь

[upd2] Ура! Запустил Total Commander как DetachedProgram, дождался окончания установки устройств, установил Thinstall и WinRAR, замутил на своём ноуте виртуальный флоппик и теперь готов скопировать через него снимок "происходящего" на диске в данный момент. После этого планирую что-нибудь изменить в winnt.sif, прогнать установку ещё раз, сделать второй снимок и найти различия

[upd3] Наконец-то скопировал первый снимок системы, теперь очистил winnt.sif (всё, кроме [GuiAttended]) и собираюсь сделать второй снимок

[upd4] Сделал всё, убедился, что кроме %windir%\system32\$winnt$.inf (ну и оперативной памяти, естественно), настройки из winnt.sif нигде не хранятся. Сам $winnt$.inf опрашивается, судя по всему, практически сразу после запуска setup.exe, поэтому для более сложных манипуляций нужно действительно использовать метод подмены Setup'а. Завтра подумаю, как можно объединить мою программку и проект spectre4/fantik Если получится, то будет одновременно а) полностью изменяемая конфигурация Windows прямо в процессе установки; б) полностью автоматизированная установка Windows; в) консоль восстановления вместе с этой самой конфигурацией (над этим придётся ещё думать и думать).

Последний раз редактировалось A.A.Z., 21-04-2008 в 04:51.


Отправлено: 21:59, 20-04-2008 | #6


Ветеран


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

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


A.A.Z.,
Цитата A.A.Z.:
В теории (пока что) можно будет в некоторых ситуациях отказываться от winnt.sif, чтобы сохранить консоль восстановления »
А чего там думать. там просто нужно секцию [Unattended] начисто снести и будет тебе счастье....
только если ты запускаешь на T39, то консоль уже давно пропущена....

-------
Я не развожу политику в подписи
ПТН ПНХ


Отправлено: 15:52, 21-04-2008 | #7


Старожил


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

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


Цитата vserd:
А чего там думать. там просто нужно секцию [Unattended] начисто снести и будет тебе счастье....
только если ты запускаешь на T39, то консоль уже давно пропущена.... »
В том-то и дело, что с помощью идеи о FakeSetup'е я попытаюсь отказаться от использования winnt.sif (точнее, заменяя его чем-то другим), создавая "вручную" $winnt$.inf в начале графического этапа установки и использования моей программки для дальнейшей автоматизации процесса (такие вещи, как, например, выбор раскладок клавиатуры, эмулировать довольно долго, поэтому я пока не отказываюсь от своей самой первой идеи).

Отправлено: 16:47, 21-04-2008 | #8



Компьютерный форум OSzone.net » Автоматическая установка Windows » Автоматическая установка Windows 2000/XP/2003 » Альтернативный способ автоматической установки Windows XP

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

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
Интерфейс - Способ установки иконок Dav3000 Microsoft Windows Vista 2 18-06-2011 21:56
[решено] Буква HDD при автоматической установки Windows XP Pokemon Автоматическая установка Windows 2000/XP/2003 9 09-06-2011 15:49
Прочие - Поддержка Windows 2000 c программами автоматической установки драйверов batyaPS Наборы обновлений для Windows XP/2003/Windows 7 2 17-02-2010 13:57
АнтиSYSTEM (способ установки и использования Windows XP) Сергей Варфоломеев Автоматическая установка Windows 2000/XP/2003 23 24-05-2009 18:40
Info - АнтиSYSTEM (способ установки и использования Windows XP) Сергей Варфоломеев Защита компьютерных систем 0 10-05-2009 15:30




 
Переход