PDA

Показать полную графическую версию : [addon] SetEnvCD


Страниц : [1] 2 3

dimich22
22-10-2007, 09:33
Аддон SetEnvCD для интеграции в дистрибутив Windows XPSP2 посредством UpdatePack-XPSP2-Rus
Тип интеграции - svcpack
Добавляет собственную переменную %CDROM% в систему.
Необходима при установке, например, на компьютер с картридером.

--
Ссылки на закачку:

Зеркало 1 (http://ifolder.ru/3828647)
Зеркало 2 (http://rapidshare.com/files/64286575/SetEnvCD.zip)
~ 60 Кб
--
Для интеграции в дистрибутив Windows распакуйте архив в папку "Addons" UpdatePack-XPSP2-Rus
----

Тут чуть поподробнее распишу. Наверняка когда-нибудь вам приходилось сталкиваться с такими вещами, когда при установке ОС находились дисковые устройства и буква CD диска сбивалась, при этом часть программ (аддонов) уже не могла выполниться. Конечно, можно все перенести на T-13, но некоторые вещи - никак. Например, у меня часть ПО ставится при первом входе в систему из RunOnceEx. А так как я являюсь счастливым обладателем картридера, то вот как раз та часть ПО и не ставится. По небольшой подсказке jameszero на основе этой темы (http://oszone.net/3673) и был реализован аддон SetEnvCD, который добавляет переменную %CDROM% в систему.
Полевые испытания прошли успешно. Так что у кого возникает подобная проблема - пользуйтесь. Да и вообще можно всем ее включить - вреда не будет. Ведь бывают ситуации, когда мы к кому-то приходим со своим диском, а там как раз описанная выше проблема. При наличии SetEnvCD никаких лишних телодвижений вам не потребуется - устанавливать систему можно будет не задумываясь о переназначении букв дисков.

biork
20-12-2007, 05:35
Прочитав описание, обрадовался тому, что наконец-то кто-то поборол эту маленькую неприятность и сразу же пересобрал диск, добавив Ваш аддон, не сильно вникая что где и куда, а сегодня, как по заказу получаю то, с чем боролись... :-)
У меня в RunOnceEx переменная CD привода прописана так: SET CDROM=%~D0
Убрать, что-ли, эту строку?

dimich22
20-12-2007, 15:33
Да, можно убрать. Так как переменная %CDROM% прописывается в систему на T13. У меня на домашней машине проблем не возникало. Но вот собрать какую-то статистику не получается.

Spirkaa
21-12-2007, 12:23
наверное нужно уточнить, что в корне диска должен лежать маркерный файл WIN51

dimich22
23-12-2007, 10:48
Akella130986, не знаю как у вас, а у меня на домашей системе намертво прописалась переменная %CDROM%

hobbit25
24-12-2007, 10:42
а кто нить пробовал этот аддон на совместимость с BS POST ????

dimich22
25-12-2007, 21:28
Что-то действительно не так. Пока до конца ясной картины у меня нет. Но я работаю над этим вопросом)))

zver5
27-12-2007, 11:08
dimich22,
Не работает даный аддон мне так кажется.
Подключаю кардридер устанавливаю систему, Wpi теряется так было и с аддоном и без него. А вообще идея была хорошая.

dimich22
27-12-2007, 14:30
Интересно, что у меня на компе без аддона система установилась, но приложения из RunOnceEx не запустились. А при его наличии все прошло гладко. Попробую на праздниках другой вариант.
Вот только мне интересно, а когда тогда назначается буква диска? Если при первом входе в систему, то решение только одно - ставить приложения при второй перезагрузке. А если раньше - то можно и другой способ. Видимо, дело в том, что использовав в своем аддоне прописывание переменной в реестр, изменения вступают в силу только после перезагрузки. Поэтому для RunOnceEx (при запуске из cmdlines) вновь введенную переменную %CDROM% использовать еще нельзя.
Все-таки основной вопрос - в какой момент происходит сдвиг буквы диска CD-ROM. Тогда можно все-таки обойти проблему.

simplix
27-12-2007, 16:56
В начале текстового этапа установки, после загрузки основных драйверов, с помощью редактора разделов можно определить буквы дисков. Если у нас один винт и на нём будет создаваться один раздел, естественно он получит букву C, а сидюк - D. Но когда разделов несколько, тут есть нюанс. Допустим мы хотим разбить винт на 2 раздела. Если нажать C (создать), ввести размер, Enter, и тут же нажать C на втором разделе, размер уже будет введён, Enter, - то первый раздел получит букву C, второй E, а сидюк D. Если же в начале разметки нажать C, Enter, D, Enter (то есть создать и удалить раздел), а потом повторить предыдущие действия (C, ввести размер, Enter, вниз, C, Enter), то буквы назначатся правильно: первый и второй разделы - C и D соответственно, и сидюк E.

dimich22
27-12-2007, 17:24
simplix, тут все немного сложнее. Букву сидюка я определить могу. И назначить переменную тоже. Но вот такие вещи, как кардридеры портят всю малину. Им буквы назначаются потом - после того, как мы определили букву CD-ROM. Почему-то мне кажется, что происходит это после первого входа в систему.

simplix
27-12-2007, 18:06
Им буквы назначаются потом »
Потом так потом, но если у сидюка уже буква D к примеру, то кардриадеру назначатся буквы E-Z - как это повлияет на установку, если сидюк уже имеет свою постоянную букву?

dimich22
27-12-2007, 21:55
simplix, так в том-то все и дело, что буква сидюка сбивается - кардридеру буквы назначаются до него. Если бы все сразу жестко прописывалось, то и проблем бы при установке приложений с CD не возникало бы.

simplix
27-12-2007, 22:21
Попробуй пошаманить над этими статьями:
http://technet2.microsoft.com/WindowsServer/ru/Library/33cc9af7-f68c-4656-af97-82e804a9c1e01049.mspx?mfr=true
http://support.microsoft.com/kb/300415/ru

biork
28-12-2007, 14:21
Да, можно убрать. Так как переменная %CDROM% прописывается в систему на T13. У меня на домашней машине проблем не возникало. Но вот собрать какую-то статистику не получается. »

В этом случае вообще из RunOnceEx ни чего с CD не запускается.

Короче, заменил в RunOnceEx строку
SET CDROM=%~D0
на
for %%i in (C D E F G H I J K L M N O P Q R S T U V W X Y Z) do if exist %%i:\WIN51 set CDROM=%%i:
REG ADD "HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Environment" /v cdrom /d %CDROM% /f

вроде бы на десятке установок проблема потери сидюка не наблюдалась.

dimich22
28-12-2007, 16:41
simplix, посмотрю. Но пока не понял, как применить во время установки.
biork, у меня переменная %CDROM% определяется именно вторым способом. Попробую потом выложить еще один вариант, чтобы для RunOnceEx можно было бы сразу использовать эту переменную.

simplix
28-12-2007, 21:54
До меня вообще плохо доходит полезность этого аддона. А если сидюков много? Теряем универсальность. Вообще драйвера устройств ставятся до T13, поэтому на T13 буквы дисков уже должны быть определены, а если есть кардриадер - его буквы должны быть за сидюком, и после такого расклада буква сидюка уже не изменится. Почему они у вас меняются после перезагрузки - не понятно, такого быть не должно, и правильным будет хорошенько покопаться в установке и выяснить, почему так происходит. В частности - на T13 давим Shift+F10 и смотрим где у нас какие буквы.

biork
30-12-2007, 11:18
Ну... вобщем ни чего не помогло... и в RunOnceEx строчки и аддон, а каждая вторая третья установка, как на зло с перепутанными буквами... Где то пораньше это должно применяться.
Нашёл выход из положения - отказ от установки приложений с сидюка из RunOnceEx (или раньше, или позже)

simplix
31-12-2007, 00:18
Вот ещё один вариант, который прост, как лопата (с). При запуске программа перебирает все сидюки в системе и добавляет в переменную %cdrom% первый найденный сидюк, в корне которого лежит файл WIN51. Тестируйте, когда именно её запускать - на T13 или непосредственно перед началом установки приложений при первом логоне (в таком случае её можно будет скопировать в %WinDir%).

vserd
31-12-2007, 10:19
dimich22, при установке ОС находились дисковые устройства и буква CD диска сбивалась, при этом часть программ (аддонов) уже не могла выполниться. Конечно, можно все перенести на T-13, но некоторые вещи - никак. Например, у меня часть ПО ставится при первом входе в систему из RunOnceEx. А так как я являюсь счастливым обладателем картридера, то вот как раз та часть ПО и не ставится. »
Можешь выполнить эту программку http://ifolder.ru/4789763 с такими параметрами:
DevicePath2DosPath.exe /ini=%WINDIR%\system32\$winnt$.inf[data]sourcepath >> t1
До и после того как меняются буквы дисков.
А затем опубликовать результаты?




© OSzone.net 2001-2012