PDA

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


Страниц : 1 2 3 4 [5] 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123

amel27
15-04-2006, 05:06
убрал утилиту WATCHDRV.EXE, так как я стараюсь пользоватса только сертифицированными драйверами!!Тоже стараюсь не использовать WATCHDRV, но по другой причине - ставлю всегда через winnt.sif, там можно отключить проверку на время установки.

Boa Soft
15-04-2006, 10:15
ставлю всегда через winnt.sif, там можно отключить проверку на время установки.

Это почти всегда не работает. Не даром же люди извращались и делали WATCHDRV.

Boa Soft
15-04-2006, 10:37
Сомневаюсь что будет результат - обычно установка параметров перезапуска проводится в самом конце очередного этапа установки.

Пройденый этап результато ТОЧНО не будет. Это перезапишется уже после создания веток реестра. Перед самой перезагрузкой.


По окончании установки ключ "SystemSetupInProgress" ветки HKLM\SYSTEM\Setup сбрасывается в "0" и установщик начинает интенсивно скидывать реестр в новые файлы, после чего планирует их на переименование и завершает работу. Счет времени на последнем этапе идет на секунды, скрипты тут не справятся - на деле очередь до них доходит только по окончании установки, т.е. когда уже поздно.

А если "заорозить" процесс сетапа? Сделать ему suspend. Выполнить нужное и разморозить?

Есть еще одна точка аттаки - примерно на t10 - t5. Точнее не скажу. Тогда идет выполнение того, что определено в параметре /cmd: при запуске Winnt32. Это падает в [SetupParam] в $winnt$.sif и выполняется на T5. Эта фича практически никогда не используется и ее
можно использовать для нужд пакета. Просто на начальном этапе через presetup через ecxo [SetupParam] >>$winnt$.sif добавить нужное.
Надо попробовать. На этом этапе уже не нужны ни утилиты ни папки с дровами и можно смело делать очистку. Времени вагон - сетап не подет далее до завершения программы.

amel27
15-04-2006, 17:48
Это почти всегда не работает. Не даром же люди извращались и делали WATCHDRV.Ты не прав - тот же Pyron (автор метОды) обосновывал мотив WATCHDRV именно универсальностью дистрибутива, т.е. независимостью от типа установки. У меня с winnt.sif проблем не было ни разу, зато были проблемы при одновременном применении WATCHDRV и соответствующих параметров в winnt.sif.

ProkVS
17-04-2006, 17:01
Извените за излишнюю настырность, но всё же, просветите пожалуйста на счёт папки D в корне диска.
Которая образуется после установки дистрибутива с интегрированным аддоном с драйверами от Bashrat the Sneaky.
Можно ли её удалить и если можно, то почему это не предусмотрено в аддоне? 500 мб всё-таки...

Unter
18-04-2006, 01:28
ProkVS, у меня в RunOnceEx запускается cmd-шник, который в частности
также удаляет эту папку и пока проблем не было.

Celluloid
18-04-2006, 03:39
Несколько вопросов к уважаемому Boa Soft.
1. Можно ли перепаковать файл driver0.exe из DRV_MST с помощью DrvPacker-а без потери функционала, добавив (или удалив) какие-либо драйверы, и поправив, естественно Dosnet и Txtsetup.
1. Должны ли драйверы MassStorage (из driver0.exe) оставаться после установки в %SystemDrive%\drivers, как другие драйверы из DRV_INST?
2. Если не должны, то как можно, при установке на виртуальную машину, проверить пытались ли они установиться (все остальные, которые из DRV_INST, видны в setupapi.log)?

amel27
18-04-2006, 11:28
ProkVS
найди в аддоне файл presetup.cm_, распакуй, отредактируй и запакуй обратно:

для DRV_INST - убрать комментарий перед "RD /s /q %SystemDrive%\drivers"
для Z_DRV_INST - заменить "set keepdrv=1" на "set keepdrv=0"

Boa Soft
19-04-2006, 04:06
Маленький анонс.

Скоро будет новая версия, рассчитанная как на установку с HDD так и с CD.

Что будет.

С CD напрямую, без копирования распаковываются оригинальные пакеты и запускается установка.
С HDD драйвера подхватываются в распакованном виде.
Возможно копирование дистрибутива с CD и прописывание путей в реестр (утилита исправлена и настраивается).
Возможно удаление папки с драйверами и сброс пути на %SystemRoot%\inf.
Возможно удаление служебных файлов.
Происходит после установки сброс полисей подписывания драйверов по умолчанию.
Все настраивается через переменные в 1 файле.
Файлы архивов сохраняются оригинальными.
Возможно удаление/добавление заархивированных драйверов уже ПОСЛЕ сборки дистрибутива.
(кроме МассСторидж - версии в I386 и драйверах дожны быть одинаковые, во избежании глюков).
Это уже работает.

Что разрабатывается.

Утилита для сохранения только тех драйверов, которые установлены в системе.
Пока решено в лоб - подсчет CRC всех INF в папке и сравнения их с CRC OEMNN.inf и копирование нужного при совпадении.
Если удаестся разобратся с PNF - решение будет более простым.

Так что, если кому не ответил по старым вопросам - не обессудте, будет новый паке, с учетом Ваших пожеланий.

romeo91
19-04-2006, 07:44
Boa Soft
пробовал ПАК z_drv_inst.7z
у меня приинтеграции пстоянно пишется какая ошибка

FIlecase не является внутренней или внешней коммандой, исполняемой программой или пакетным файлом
Используются последние архивы от Bashrat the Sneaky

dimadr
19-04-2006, 09:05
romeo91

нужно файл filecase.exe (http://tools.oszone.net/dr.Dima/util/FILECASE.EXE) кинуть в папку c RusUpdatePack.

Boa Soft
20-04-2006, 13:47
Аддон сильно обновлен. Описание и возможности в шапке темы.

PS
Есть идея по управлению поведением аддона через файл ответов.

boss911
20-04-2006, 18:38
Boa Soft

Правильно ли я понял (сори я не очень разбераюсь в батниках), если мой DRIVERS.EXE распаковываетса в %SystemRoot%\Drivers , то в PreSetup.cmd мне надо поменять
SET DRVROOT=%SystemDrive%\на путь SystemRoot%\Drivers, ну и в Finish.cmd
IF EXIST %SystemDrive%\Drivers SET DPDIR=%SystemDrive%\Driversтоже меняем на SystemRoot%\Drivers . А если хотим вырезать утилиту WATCHDRV.EXE , то правим эти же батники!?? И если можно, так любопытство, что это за утилиты COPYINF.EXE , COPYSRC.EXE и HIDCON.EXE ??

Shido
21-04-2006, 04:33
Boa Soft Можно выложить аддон где нибудь ещё, немогу скачать обрезает на 29 кб.
Спасибо.

Grenky
21-04-2006, 09:25
копирование папки i386 перенесли на T13 :)
а планируется ли как нибудь выкрутиться без этой операции в будующих релизах?

Boa Soft чуть не забыл главное... Мега сенкс тебе за твой труд.
Хорошо что ты пошел в сторону z_drv_inst addon пакета

Grenky
21-04-2006, 09:37
Кстати могу ли я в самом конце из RunOnceEx.cmd убить C:\WINDOWS\I386 ?
А то в sif файлах у меня есть пароль которые не желательно кидать где попало.
И как удаление отразиться на работе или ... короче непойму чего она там валяется :)

Boa Soft
21-04-2006, 11:04
копирование папки i386 перенесли на T13
а планируется ли как нибудь выкрутиться без этой операции в будующих релизах?

Если ТЕБЕ это не нужно - отключи в Finish.cmd.

Правильно ли я понял (сори я не очень разбераюсь в батниках), если мой DRIVERS.EXE распаковываетса в %SystemRoot%\Drivers , то в PreSetup.cmd мне надо поменять

Новая версия не работает более с SFX. Все идет в простых архивах 7z. Так проще. Если надо - замени распаковку архивов на запуск своего sfx. Более ничего не надо менять. Скрипт уже проверенный и не дает проблем.

presetup.cmd


@ECHO OFF

REM Set variables
// Это куда распаковываются Башратовские архивы.
SET DRVROOT=%SystemDrive%\
// Это куда ляжут после распаковки драйвера
// В его архивах такая структура
// .\D
// \имя класса драйверов
// \папка1
// \папкаN

SET DRVDIR=%DRVROOT%\D

//имя папки, где лежат упакованные в архивы драйвера на сд (можно и в корне HDD)
SET OEMDIR=DRV

// Выбор метода 0 - через setdevicepath 1- SetupCopyOEMInf
SET CopyInf=0

//происк диска с папкой упакованных драйверов.

REM find driver arhives folder at TAGFILE
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:\%OEMDIR%" set CDDRIVE=%%i:

//Распаковка архивов

CD /D %DRVROOT%
REM auto unpacking all driver 7z arhive
%SystemRoot%\system32\7za.exe x -y -aoa %CDDRIVE%\%OEMDIR%\*.7z -o"%DRVROOT%"

//Проверяем, были ли распакованны драйвера, если нет - считаем, что они в распакованном виде уже лежат на HDD в DRIVERS
REM Check HDD or RIS mode
IF NOT EXIST %DRVDIR% SET DRVDIR=%DRVROOT%\DRIVERS

// Обход дерева каталогов драйверов или прекопирование Inf

IF %CopyInf%==0 (
REM prepare install signed or unsigned drivers
REM RegPath metod
%SystemRoot%\system32\SETPATH.EXE %DRVDIR%
) ELSE (
REM prepare install signed or unsigned drivers
REM CopyOemInf metod
%SystemRoot%\system32\CopyInf.exe %DRVDIR%
)

//Запуск WATCHDRV.EXE

REM supress check signed drivers
Start %SystemRoot%\system32\WATCHDRV.EXE

EXIT





Обращаю внимание, что setup в пакете - новая версия, которая переименовывает и запускает реальный setup сама.

Кстати могу ли я в самом конце из RunOnceEx.cmd убить C:\WINDOWS\I386 ?

Смотри первое предложение. Но, не проще ли DEL %SystemRoot%\system32\*.sif ???

PS Обьясняю еще раз. На очень многих ноутах и фабрично предустановленных брендовых компах присутствует или в корне или в папку винды папка i386 дистрибутива. Иногда в порепаном виде - удалены средства установки (winnt, winnt32 и некотрые вложенные папки ).
И все source* в реестре прописаны на неё.
Сделанно это для того, чтобы уменьшить число обращений юзерей в ТП. при таком методе при доустановке опциональных компонентов не надо втавлять диск. При порче вайлов WFP просто возьмет из этой папки файлы, а не будет просить диск.

Так что, если не надо - отключите в Finish, поставив SET CopySrc=0

PS2 Скоро выложу свою версию setup, конфигурируемую на основе дополнительной секции в файле ответов.
Сделано на основе наблюдения, что виндовс игнорирует неизвестные ему секции и значения в файле ответов, но файл с небольшими дополнениями копируется в $winnt$.sif. Поэтому при запуске setup мы просто обрабатываем дополнительную секцию этого файла и делаем выводы. Могу сделать при отсутствии секции вывод диалога выбора параметров.

Dimus
21-04-2006, 11:25
Уважаемые, может я что-то не так сделал, но у меня после интеграции данного адона, не идет установка не на VMWare, не на реальной машине. На текстовом этапе в процессе копирования ошибка, типа не могу прочитать файл vmscsi.sys и продолжение не возможно.
Пакет от Bashrat the Sneaky DriverPack_MassStorage_V6031 и DriverPack_Chipset_V6031
Может нужно только версию 6021?
Пакет MassStorage нужен версии 6021 или новее (лежит на сайте). Остальные пакеты - любые.

Boa Soft
21-04-2006, 18:32
Пакет от Bashrat the Sneaky DriverPack_MassStorage_V6031 и DriverPack_Chipset_V6031
Может нужно только версию 6021?

Как выяснилось, только 6021. Новая версия уже готова (под V6031). Вечером залью.

Там уже будет тест на наличие файлов.

Boa Soft
22-04-2006, 03:17
Пакет обновлен под версию V6031 (лежит на сайте у Башрата).
Добавлена проверка правильносьи сборки и наличия других пакетов драйверов.
В документации описал настройки.


Ссылка та же. В шапке.




© OSzone.net 2001-2012