Ru-Board.club
← Вернуться в раздел «Microsoft Windows»

» Windows Preinstallation Environment(WinPE) и BartPE LiveCD 5

Автор: yurkesha
Дата сообщения: 22.10.2008 16:30
Deepole
Обращаешься не по адресу. Как именно зайти(и возможно ли это вообще) нужно спрашивать у автора сборки.
Но в принципе есть такие варианты:
- через ERD Commander -regedit
- запуск через runscanner обычного regedit
- запуск еще какой-нить проги, для работы с реестром не через RPC, через runscanner.
- через DOS-загрузку с поддержкой NTFS(при необходимости) прогой RegView от paullee
Автор: 7sh3
Дата сообщения: 22.10.2008 16:43
m0nty2k5

Цитата:
Как раз думал попробовать в ХР (под виртуалкой), но потом подумал "а какая разница?" ...

в pebuilder_7sh3.txt недвусмысленно написано - Конструктор корректно работает в .... Vista (32Bit) про x64 там ничего нет
виртуалка с xpsp2\3, собирать из xpsp2 ru\en, pro\home...
Автор: m0nty2k5
Дата сообщения: 22.10.2008 16:46
7sh3
Спасибо, вечерком попробую.
Автор: 7sh3
Дата сообщения: 22.10.2008 16:52
...под учеткой админа
в висте нет никакой учетки админа в том смысле как это было в хр...
Автор: jCHex
Дата сообщения: 22.10.2008 17:14

Цитата:
надо бы тока еще разобраться с тем как скопировать из сорцов файлы ядер с заменой имени напрямую

У меня вариант
@SourcePath@I386\ntkrnlmp.exe=2,ntoskrnl.exe
вроде правильно отрабатывает - в %OutDir%\i386\system32\ получается ntoskrnl.exe=ntkrnlmp.exe
а вот с ntkrpamp.exe=2,ntkrnlpa.exe конечно проблемка - она только в sp2.cab А вот оттуда вроде никак не достается простым плагином

Добавлено:
А по старому поводу... кому интересно - все-таки есть несложная возможность создавать варианты загрузки с какими-либо отличающимися файлами, для которых важно сохранение имени файла, и хоть даже на начальных этапах загрузки (напр. как у нас ядро), но без создания двух сборок:
учитывая
1) Необходимость сохранения имени
2) Отсутствие возможности переименования файлов ("сохранение имени на начальных этапах загрузки"), т.к.
> а) с CD/DVD все и так понятно
> б) у рам-сборки - setupldr.bin врядли легко подружить с загрузкой чего-то другого кроме ядра (чтобы переименовать), а чем-то другим сажать ntfs-образ Boot.img в память, затем переименовать нужные файлы на нем, а затем грузить систему - я понятия не имею чем можно
> в) (вариант usb / hdd не рассматриваем, там даже можно найти способ автопереименовать до загрузки, либо для ram / usb/hdd-ntfs - все аналогично см. далее)
3) Файловая система - либо ISO (mini-nt), либо ntfs (ram-boot)... ничего общего не напоминает?
у нас есть только один выход - ну конечно же hard links - жесткие ссылки, оно же оптимизация у cdimage (-o)

Все что нам нужно:
Для mini-nt: Второй доп. каталог загрузки (i386 > ????), копия файлов в этот каталог из основного i386, за исключением нужных нам других (напр. ядро + txtsetup.sif), их - свой вариант, патчим загрузчик в доп. каталоге (????\setupldr.bin) для доп. варианта загрузки, заменяя имя загруз. каталога i386 > ????, остальное (хард-линки) за нас сделает оптимизация cdimage
Для ram-boot: У нас же ntfs! А значит хард-линки тоже возможны. Но здесь нужно управится в размер диска (образа) => хард-линки создавать без копирования доп. файлов, напрямую. Но собсно именно так это и делается на нтфс В WinXP стандартная утилитка командной строки fsutil.exe:
fsutil hardlink create <новый файл> <существующий файл>
Кидаем основной каталог (i386), затем создаем хард-линки на все его файлы для второго - доп. каталога, кроме нужных нам файлов, которые кидаем свои. Отключаем и забираем Boot.img. Добавляем второй вариант файла winnt.sif > ?????.???, заменяем в его строке BootPath="\i386\System32\" путь i386 на наш второй каталог, добавляем второй загрузчик (setupldr.bin > ????????.??? рядом с Boot.img) для доп. варианта загрузки, патчим его, заменяя winnt.sif на новый.

Для ram-сборки придется влезть в скрипт (создания рам-сборки) многоув. NIKZZZZ (вытащив его и драйвер и проч. из временной папки поймав момент - когда создается рам-сборка, если этого хватит... а если нет - культурней попросить его выложить внутренности ramboot.exe)

Внимание: все это пока теория! Но вполне очевидная.
-
Есть параллельно теме вопрос, кто знает какую-нибудь утилитку - Hex-патчер в режиме -silent из командной строки?
Автор: 7sh3
Дата сообщения: 22.10.2008 20:19
jCHex

Цитата:
а если нет - культурней попросить его выложить внутренности ramboot.exe

практически все содержимое лежит в папке temp когда идет сборка, NIKZZZZ в теме по winbuilder выкладывал и ручной вариант с батником для создания ramboot сборки...

я добавил в рамсборку плаг от yurkesha, у меня одноядерный - никакого замедления загрузки и работы не заметил, выложил в соседней теме, народ скачает - скажет как там на двух ядрах...
Автор: jCHex
Дата сообщения: 22.10.2008 20:34
7sh3
Чуть позже и я попробую его плаг и отпишусь на одноядернике Intel Celeron 1000 MHz Coppermine-128 на Abit ST6E (Северный мост: Intel Solano i815EP, Южный мост: Intel 82801BA ICH2X)
А про hard links я написал кому пригодится вообще, т.к. мы вот совсем забыли про них , а с много/одноядрённостью я надеюсь проблема решена.
Автор: yurkesha
Дата сообщения: 22.10.2008 23:14
ALL
оформил и выложил плаг поддержки многопроцессорных/мультиядерных компьютеров. Всего пара кило...
Опробуйте скрипт инициализации - он должен работать и при запуске напрямую и при запуске из Pebuilder через кнопку "Настройки" в разделе "Плагины".
Результат правильной отработки скрипта - создание папки FILES и помещение в нее файлов ntkrnlmp.exe и ntkrpamp.exe из того дистриба винды, который используется для сборки.
Теоретически могут возникнуть проблемы если путь к плагину либо путь к дистрибутиву винды будут содержать пробелы.
Автор: m0nty2k5
Дата сообщения: 22.10.2008 23:37
7sh3

Цитата:
виртуалка с xpsp2\3, собирать из xpsp2 ru\en, pro\home...

Собранный диск в виртуалке XP SP2 EN, с использованием в качестве источника того же XP SP2 EN, ложит на лопатки любую виртуалку - VirtualBox и VmWare. Даже ползунок не появляется. VirtualBox сообщает радостную новость в логе:

Код: 00:00:24.027 Changing the VM state from 'RUNNING' to 'GURU_MEDITATION'.
Автор: yurkesha
Дата сообщения: 23.10.2008 00:34
m0nty2k5
может все-таки тебе имеет смысл поменять дистриб? А то что-то больно большая проблема... Такое впечатление что дистриб просто-напросто порезан чем-то типа nlite по самое немогу...

Добавлено:
Давай-ка лог сборки в студию - на файлообменник какой-нить...
Автор: AZJIO
Дата сообщения: 23.10.2008 00:55
7sh3

Цитата:
народ скачает - скажет как там на двух ядрах...

На двух ядрах нормально работает. На втором компе (прескот 3000МГц) тоже работает нормально. Интересно, что hal.dll и ntoskrnl.exe из LiveCD временно заменённые на компе с прескот в стационарной винде не работают, комп не грузится. Грузится с halmacpi.dll (родной - 131 кб), halmps.dll, ntkrnlmp.exe (переименованными).

Цитата:
NIKZZZZ в теме по winbuilder выкладывал и ручной вариант с батником для создания ramboot сборки...

Я давно хотел спросить, как бы переделать ещё вариант ramboot.exe но без создания исошника. Постоянно после сборки вытаскиваю Boot.img в корень диска С, и ситуация не изменится, так как делаю сборку с bcdw, да ещё и DVD и в любом случае протестирую Boot.img с харда на реальном компе.
Автор: m0nty2k5
Дата сообщения: 23.10.2008 01:31
yurkesha
Образ VL. В самом верху этой (65) страницы я это подчеркнул и указал MD5 диска.

Вот лог: http://rapidshare.com/files/156615329/pebuilder.log.rar.html - ни единой ошибки, что в Висте, что в ХР. Вот только сборка под ХР отказалась вообще грузиться ...
Автор: 7sh3
Дата сообщения: 23.10.2008 01:33
AZJIO

Цитата:
Постоянно после сборки вытаскиваю Boot.img

я тоже постоянно вытаскиваю, никак не напрягает, сам исошник создается за секунды, вытаскиваю 7zip'ом - тоже быстро...

Цитата:
На двух ядрах нормально работает

в твоей сборке?

Добавлено:
m0nty2k5
ошибка
InfCacheBuild: pSetupInfCacheBuild failed, X:\pebuilder_xpe\BartPE\i386\inf\INFCACHE.1 was not created

у тебя какой проц? в виртуалке винда установлена с виртуализацией? в папке конструктора\папке temp есть файл SETUPAPI.DLL ?
Автор: m0nty2k5
Дата сообщения: 23.10.2008 01:48
7sh3
1) Q6700, в виртуалке один
2) без виртуализации
3) SETUPAPI.DLL есть
Автор: 7sh3
Дата сообщения: 23.10.2008 02:04
m0nty2k5
собираешь в vmware? я сам так не пробовал собирать - в виртуалке и под x64, я x64 висту вообще не видел еще фиг знает, попробуй в oem1\postprocessing заменить infcachebuild.exe на версию из архива infcachebuild_amd64.rar, может прокатит - infcachebuild у тебя не работает почему-то...
Автор: m0nty2k5
Дата сообщения: 23.10.2008 03:13
7sh3

Цитата:
собираешь в vmware?

Из-за XP2 приходится в VirtualBox'e.

Собрал еще раз, в своей Висте х64 и с минимум плагинов (только один - по-умолчанию). Собралось без единой помарки, НО - картина таже.

infcachebuild_amd64.rar - стало хуже. Перестал находить SETUPAPI.DLL

Завтра попробую на реальной XP SP2 EN ...

Добавлено:
Возник еще один вопрос:



Откуда в английской системе взялось русское слово?

Добавлено:
Скриншот: попытка зайти на диск, у которого нет драйверов (обычно ни у одного диска!). Жду с минутку и попадаю туда. В последствии, могу заходить без минутных задержек, даже на свеже-подключенные флешки, к которым тоже не установлены драйверы.

Чудеса какие-то!

Прилагаю лог последней сборки, что на скриншоте - с минимум плагинов, точнее с одним "кастом": http://rapidshare.com/files/156640654/pebuilder.log.2.rar.html
Автор: warlock1985
Дата сообщения: 23.10.2008 09:44
yurkesha
В каком случае Каспер, собранный на Вашем плаге "AVP8 NEW", может не смочь удалить вирусы? Раздел NTFS, сборка на XPsp2. Каспер вирусы видит, но говорит что удалить не может.
Автор: yurkesha
Дата сообщения: 23.10.2008 10:16
warlock1985
только в той ситуации когда переопределены права на NTFS. (Ну либо маловероятная ситуация что сборка инфицирована )
Если права переопределены то надо открыть свойства папки либо конкретного файла и на вкладке "безопасность" убрать наследование и дать либо "SYSTEM" либо "Все" полные права на NTFS.
Автор: Sish
Дата сообщения: 23.10.2008 12:21
yurkesha 00:14 23-10-2008

Первый баг-репорт, так сказать: мать - ECS K7VZA на чипсете KT133A (понимаю, что монтстр доисторический, но тем не менее), при загрузке с CD "чистого" BartPE вместо лого винды - черный экран с мигающим в левом верхнем углу курсором
Автор: yurkesha
Дата сообщения: 23.10.2008 12:34
Sish
Понятно. Похоже я знаю в чем [more=дело]
в файле txtsetup.sif в разделе [hal]
поменяй
syspro_mp = halsp.dll ,2,halsp.dll
на
syspro_mp = halmps.dll ,2,halmps.dll
и еще в разделе
[Hal.Load]
поменяй
syspro_mp = halsp.dll
на syspro_mp = halmps.dll

Или можно поправить в плагине:
меняем строку
"\I386\TXTSETUP.SIF","Hal.Load","syspro_mp"," halsp.dll"
на
"\I386\TXTSETUP.SIF","Hal.Load","syspro_mp"," halmps.dll"

и еще меняем строку
"\I386\TXTSETUP.SIF","hal","syspro_mp"," halsp.dll,2,halsp.dll"
на
"\I386\TXTSETUP.SIF","hal","syspro_mp"," halmps.dll,2,halmps.dll"[/more]

Добавлено:
И кстати - вот такое поведение машины как ты описал и является классическим при несоответствии ядра и hal.
Если ядро и хал соответсвуют друг другу но данный проц не может работать с таким сочетанием ядра и хала то будет либо перезагрузка(90%) либо синий экран.

Sish
Ну и крайняя мера для той машины - произвести переименование халов:
halmps.dll скопировать в hal.dll
halmps.dll скопировать в halapic.dll
halmps.dll скопировать в halsp.dll
и
halmacpi.dll скопировать в halacpi.dll
halmacpi.dll скопировать в halaacpi.dll
Автор: jCHex
Дата сообщения: 23.10.2008 12:50
yurkesha

Цитата:
через кнопку "Настройки"
Я правильно вижу, что в базовом конструкторе BartPE+XPE ее и не должно быть?) Или я криворукий

Цитата:
Теоретически могут возникнуть проблемы если путь к плагину либо путь к дистрибутиву винды будут содержать пробелы.

Ага, и даже практически. Но проблемы можно убрать - в первых строках IF NOT EXIST... путь %~dp0FILES ставим в кавычки.

Цитата:
IF "%MY_PATH%"=="%~d0\" ECHO Не найден файл конфигурации PEBuilder
Надеюсь, не найдется умников, кидающих конструктор прямо в корень диска, без каталога

Добавлено:

Цитата:
Похоже я знаю в чем дело

Эти исправления необходимы исключительно для данного (и аналогичных) случая? Или нужно поменять в плагине для всех?
Автор: yurkesha
Дата сообщения: 23.10.2008 13:14
jCHex
проблема неубираемая - вот в таких строках:
Код:
IF EXIST "%SOURCE%I386\sp?.cab" ("%SOURCE%I386\expand.exe" %SOURCE%I386\sp?.cab /f:ntkrnlmp.exe %~dp0FILES>NUL &ECHO Извлекаю ntkrnlmp.exe)
Автор: Sish
Дата сообщения: 23.10.2008 13:21
yurkesha

Цитата:
вышеприведенный фикс для всех.

Увы, фикс не помог

Ситуёвина осталась той же...
Автор: yurkesha
Дата сообщения: 23.10.2008 13:28
Sish
халы перекопировал?

Добавлено:
Sish
еще [more=вариант]в файле txtsetup.sif в разделе [hal]
поменяй
syspro_mp = halsp.dll ,2,halsp.dll
на
syspro_mp = halmacpi.dll ,2,halmacpi.dll
и еще в разделе
[Hal.Load]
поменяй
syspro_mp = halsp.dll
на syspro_mp = halmacpi.dll[/more] и тогда еще halmacpi.dll скопировать в halsp.dll
Автор: 7sh3
Дата сообщения: 23.10.2008 13:45
m0nty2k5

Цитата:
Из-за XP2 приходится в VirtualBox'e.

какието проблемы с установкой xp в vmware?

Цитата:
Откуда в английской системе взялось русское слово?

локаль по дефолту русская...

Цитата:
Чудеса какие-то!

чудеса что она у тебя вообще загрузилась, без обработки infcachebuild'ом...

Цитата:
Завтра попробую на реальной XP SP2 EN ...

пробовать не надо, просто собирай и все, не работает конструктор нормально в висте х64, убедились ведь уже, хотя... - ты как конструктор запускаешь? в висте надо из контекстного меню от имени админа (это реальный админ), попробуй еще собрать в винде которая установлена в vmware...

jCHex

Цитата:
Я правильно вижу, что в базовом конструкторе BartPE+XPE ее и не должно быть?

правильно, нет такой кнопки, вручную батник запусти или вручную два этих файла положи..
Автор: yurkesha
Дата сообщения: 23.10.2008 13:48
Sish
и еще - проверь по размерам файлов точно ли у тебя в сборке ntoskrnl.exe и ntkrnlpa.exe это переименованные ntkrnlmp.exe и ntkrpamp.exe.
А то ты мой плаг AcronisTI используешь - а я в нем копирование халов и ядер делаю
Копирование в Acronis надоть закоментировать.


Автор: jCHex
Дата сообщения: 23.10.2008 14:01
yurkesha
Да, проглядел, тогда вот полностью
1) в первых строках IF NOT EXIST... путь %~dp0FILES ставим в кавычки
2) FOR /F "... меняем на FOR /F "usebackq и в этой же строке IN (%MY_PATH%input.inf) на IN ("%MY_PATH%input.inf"), а SET SOURCE=%%b на SET "SOURCE=%%b"
3) строки ...expand.exe" %SOURCE%I386\sp?.cab из-за знака вопроса создают проблемы с кавычками - а значит пробелами, но решить можно, напр. добавив временную переменную и for - записать результат %SOURCE%I386\sp?.cab, и все пути в кавычки, например:
> 1. до строк IF EXIST "%SOURCE%I386\sp?.cab" пишем FOR %%a IN ("%SOURCE%I386\sp?.cab") DO SET "SOURCESP=%%a"
> 2. далее все %SOURCE%I386\sp?.cab меняем на %SOURCESP%
> 3. все пути после expand.exe ставим в кавычки: это будут пути %SOURCESP% и %~dp0FILES, %SOURCE%I386\........ex_ и %~dp0FILES\........exe
вроде все.
7sh3
Спасибо, успокоили
Автор: yurkesha
Дата сообщения: 23.10.2008 14:07
jCHex

Цитата:
> 3. все пути после expand.exe ставим в кавычки
- нельзя - expand не заработает.
Если уж на то пошло то после строки:
Код: ECHO Дистриб винды найден по указанному пути!
Автор: jCHex
Дата сообщения: 23.10.2008 14:52

Цитата:
- нельзя - expand не заработает.
с чего это? Прежде чем писать, я проверял
Или Вы про то же, что я описал - с sp?.cab в кавычках разумеется не заработает, для того и нужен for. А с без масок работает отлично в кавычках, по кр. мере из XP SP2...

Цитата:
надо вставить кусок
а так даже проще
Автор: yurkesha
Дата сообщения: 23.10.2008 14:56
jCHex
сорри я насчет определения имени сервиспака проглядел...

Страницы: 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768

Предыдущая тема: Контекстное меню мыши


Форум Ru-Board.club — поднят 15-09-2016 числа. Цель - сохранить наследие старого Ru-Board, истории становления российского интернета. Сделано для людей.