Ветеран
Пол:
Регистрация: 08.01.2012
Сообщений: 2,938
Репутация: 1523
|
Re: Win XP на HP Pavilion TouchSmart 11-e000er
Алексей_И, странно, а ХР оригинальная? Интеграция драйверов в измененных образ нежелательна. Нашел статью, как вручную самостоятельно встроить драйвера, правда там описаны Intel, но принцип все равно одинаковый. Ручная интеграция или кому интересно, что там внутриРучная интеграция или кому интересно, что там внутри
Шаг первый
Создадим в папке, где находится дистрибутив Windows, иерархию каталогов следующего вида: \$OEM$\$1\drivers\intel\. Туда поместим распакованные файлы драйверов с расширением SYS, CAT, INF и д.р. Так как некоторые производители, к которым относится и Intel, выпускают свои драйвера в кабинетных архивах (файлы с расширением CAB) и с setup.exe. В этом случае выполните следующую команду из командной строки:
путь\setup.exe –a –p \$OEM$\$1\drivers\intel\
где "путь" - директория в которой хранятся архивы CAB и setup.exe. В нашем случае мы получили файлы: TXTSETUP.OEM, iaAHCI.cat, iaStor.cat, iaAHCI.inf, iaStor.inf, iaStor.sys, license.txt.
Шаг второй
На втором этапе необходимо сделать сжатые копии всех SYS-файлов при помощи утилиты makecab и скопировать их в папку I386 дистрибутива Windows XP. Для этого из командной строки запускаем следующую команду:
makecab \$OEM$\$1\drivers\intel\имя_файла.sys \I386\имя_файла.SY_
Обратим внимание, что файлов с расширением SYS может быть несколько и выше указанную команду необходимо запускать для каждого, но только для тех имена которых совпадает с именами INF-файлов. Для нашего случая такой был один:
makecab \$OEM$\$1\drivers\intel\iaStor.sys \I386\iaStor.SY_
После того как будут сделаны все сжатые копии, файлы с расширениями SYS, CAT, INF (iaAHCI.cat, iaStor.cat, iaAHCI.inf, iaStor.inf, iaStor.sys) поместим в каталог \I386\NLDRV\001, к которому чуть ниже мы пропишим путь.
Шаг третий
Далее открываем в Блокноте или любом другом текстовом редакторе файл txtsetup.sif из директории I386.
Проделаем следующие вставки:
1) Находим секцию [SourceDisksFiles.x86] куда добавляем строки, где будут перечислены наши файлы, упомянутые в первом шаге, следующего формата:
iaahci.cat = 1984,,,,,,,1984,0,0
iaahci.inf = 1984,,,,,,,1984,0,0
iastor.cat = 1984,,,,,,,1984,0,0
iastor.inf = 1984,,,,,,,1984,0,0
iaStor.sys = 1,,,,,,4_,4,1,,,1,4
iastor.sys = 1984,,,,,,,1984,0,0
2) Далее нам нужно скопировать в txtsetup.sif информацию либо с OEM-, либо с INF-файлов. Выбор того или иного файла осуществляется по принципу - если есть одноименный SYS-файлу файл с расширением OEM, то открываем его, а если нет, то открываем одноименный INF-файл.
Если вы открыли OEM-файл, то находим строку [HardwareIds…] после которой будут идти строки вида:
id = "PCI\VEN_8086&DEV_282A&CC_0104","iaStor"
id = "PCI\VEN_8086&DEV_2829&CC_0106","iaStor"
...
В INF-файле необходимая нам информация находиться после секции [Strings] и представлена виде:
PCI\VEN_8086&DEV_2822&CC_0104.DeviceDesc = "Intel(R) ICH8R/ICH9R SATA RAID Controller"
PCI\VEN_8086&DEV_282A&CC_0104.DeviceDesc = "Intel(R) 82801HEM SATA RAID Controller"
...
Из этих данных нам понадобится скопировать лишь только часть: PCI\VEN_8086&DEV_2822&CC_0104.
Далее переходим к файлу txtsetup.sif. Находим секцию [HardwareIdsDatabase] и вставляем все выбранные части строк добавляя к каждой "=имя_файла", где "имя_файла" - имя вашего SYS-файла, одноименного OEM- или INF-файлу.
В нашем случае достаточно было следующего:
[HardwareIdsDatabase]
PCI\VEN_8086&DEV_2829&CC_0106 = "iaStor"
PCI\VEN_8086&DEV_282A&CC_0104 = "iaStor"
Но для пущей уверенности рекомендуем скопировать все строки, подходящие под вышеобозначенное условие.
3) Теперь находим секцию [SCSI.load] и добавляем строку для каждого SYS-файла вида: имя_файла = имя_файла.sys,4. В нашем примере это выглядит так:
[SCSI.Load]
iaStor = iaStor.sys,4
...
4) Затем необходимо дать описание, устройствам, для которых интегрируются драйвера. Описание может быть любым, которые вы пожелаете. Но проще всего воспользоваться описанием из OEM- или INF-файлов. Для этого найдем секцию [SCSI] после которой добавим для каждого SYS-файла строки вида: имя_файла = "Описание".
В нашем примере это выглядит так:
[SCSI]
iaStor = "Intel(R) 82801HEM/HBM SATA AHCI Controller (Mobile ICH8M-E/M)"
iaStor = "Intel(R) 82801HEM SATA RAID Controller (Mobile ICH8M-E)"
...
На этом редактирование txtsetup.sif закончено. Сохраняем и закрываем файл.
Шаг четвертый
Следующим шагом откорректируем файл dosnet.inf, которой находится в той же директории I386. Эти изменения необходимы чтобы драйверы корректно устанавливались при инсталляции системы с жесткого диска или ее обновления с оптического носителя. Для этого следует сделать следующие операции:
1) Находим секцию [Directories], где в конец добавляем строку d11 = "\i386\NLDRV\001", которая будет указывать путь размещения файлов, упомянутых в втором шаге:
d1 = \I386
d2 = \cmpnents\tabletpc\I386
d3 = \cmpnents\mediactr\I386
d4 = \cmpnents\netfx\I386
d11 = "\i386\NLDRV\001"
2) После [FloppyFiles.1] вставляем строку вида: d1,имя_файла.sys. (Пример: d1,iaStor.sys.)
3) Находим секцию [Files], перед которым добавляем следующие:
[OptionalSrcDirs]
NLDRV
4) Вставляем в [Files], как и во втором пункте, строку вида: d1,имя_файла.sys.
5) Далее в конце секции [Files] вставляем строки: d11,имя_файла.sys, d11,имя_файла.inf, d11, имя_файла.cat. В нашем случае это выглядит так:
d11,iaahci.cat
d11,iaahci.inf
d11,iastor.cat
d11,iastor.inf
d11,iastor.sys
...
Непосредственно на этом этапе интеграцию SATA/RAID-драйверов можно считать завершенной. После чего нам необходимо будет создать загрузочный диск Windows и проверить правильно ли все сделали, поскольку все мы люди, которым свойственно ошибаться. Особенно в таком довольно запутанном деле как "колупание" дистрибутива Windows.
Создание ISO-образа
Для создания ISO-образов существует множество программ, но цель заключается в том, чтобы максимально использовать стандартные средства Windows. По этой причине мы воспользуемся консольным приложением CDImage, разработанное самой Microsoft.
Нам потребуется:
•непосредственно сама утилита CDImage.exe;
•xpboot.img - загрузчик для инсталляционного диска Windows;
•пакетный файл create_iso.cmd, который можно создать при помощи любого тестового редактора, содержание которого описано ниже.
Чтобы упростить процесс создания ISO-образа дистрибутива нашей ОС до уровня запуска лишь одного файла, мы собрали все в один архив, который можно скачать с нашего сервера.
Далее изложено содержание файла create_iso.cmd, в котором понадобится указать пути к скопированному на жесткий диск дистрибутиву и путь, куда будет сохранен ISO образ:
@echo off
TITLE Creating ISO Image of Windows XP
ECHO.
:: Указываем путь к дистрибутиву ОС
SET DISTRO=F:\temp\8\XP
:: Указываем путь, где создать результирующий ISO образ
SET OUTPUT=F:\temp\8\
:: Далее указываем метку тома без пробелов
:: Она же будет использована как имя ISO образа
SET LABEL=WXP_X-DRIVERS
:: Список стандартных меток
:: Для Windows XP просмотреть можно перейдя по ссылке
:: Для Windows 2003
:: Снятие атрибутов файлов
ECHO Removing any possible attributes set on %DISTRO% and its subfolders...
attrib -R -H "%DISTRO%" /S /D
ECHO.
:: Создание ISO
ECHO Creating ISO...
CDIMAGE.EXE -l"%LABEL%" -h -j1 -oci -m -bxpboot.img "%DISTRO%" "%OUTPUT%\ %LABEL%.ISO"
ECHO.
PAUSE
EXIT
Итак, после всех внесенных изменений остается только запустить create_iso.cmd. По окончании работы программы создается ISO-образ WXP_X-DRIVERS.ISO, если вы, конечно, не поменяли метку тома.
Заметим, что пакетный файл create_iso.cmd может быть запущен из любого места при условии, что CDImage.exe и xpboot.img находятся в одной с ним директории. В противном случае вам нужно будет прописать полные пути к этим файлам.
Далее получившийся образ можно записать любой известной вам программой для прожига дисков. На этом раздел о ручной интеграции драйверов можно считать завершенным.
|