PDA

Показать полную графическую версию : [решено] Не запускаются файлы из DetachedProgram


s127d
28-01-2007, 11:32
Есть рабочий дистрибутив с Win2k.
Всё настроено и работает. Используются папки $OEM$
Решил от них избавиться, но остался нерешённым один вопрос:
Мне надо скопировать папку с драйверами с CD на винт по времени как раз до установки оборудования, т.е. на T-39
Прочитав форум (Альтернатива $OEM$ (http://forum.oszone.net/thread-72000-all.html) , Нужна помощь!!!Вопрос по батнику и cmdlines.txt (http://forum.oszone.net/thread-77137.html) и Ввод данных на T39 (http://forum.oszone.net/thread-76432.html)) решил сделать следующее:
1) В корне CD создал папку DRV, в ней подпапку Drivers с необходимыми мне дровами;
2) В winnt.sif изменил:

...
[Unattended]
OemPreinstall=No
OemPnPDriversPath="C:\Drivers\1_Intel;C:\Drivers\2_3Com;C:\Drivers\2_BCM570x"
...
[GuiUnattended]
DetachedProgram = "C:\Winnt\Temp\Presetup.cmd"
...


3) Создал файл Presetup.cmd и с помощью HFSLIP он на текстовом этапе копируется в C:\Winnt

TITLE="Presetup copy"

FOR %%d 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 %%d:\CDROM_NT.5 SET CDQ=%%d:

XCOPY /E /Q /y %CDQ%\DRV %SYSTEMDRIVE%\

EXIT


Делал установку как на Microsoft Virtual PC, так и на реальном компе, НО
Файл Presetup.cmd не выполняется, папки с драйверами не копируются.
Вместо Presetup.cmd, делал WinRAR-овский самораспаковывающийся архив.
Итог тот же. Команда из DetachedProgram не отработала, как будто её вообще нет.

Где имеет смысл копать?

P.S. Если файл запустить после установки Win2k, то всё выполняется.

melato
28-01-2007, 16:41
Когда делались различные пакеты драйверов, то, по-моему, многие столкнулись с этой проблемой (Boa Soft, Bâshrat the Sneaky). Использовали они метод Fake-setup, а не DetachedProgram. Видно, что-то не то с ним. И этот FakeSetup запускал как раз presetup.cmd. Так что, видимо, решение следует искать в этом направлении.

Fanzuga
28-01-2007, 16:49
s127d

Кажется дело в этом:
[Unattended]
OemPreinstall=No
надо:
OemPreinstall=Yes

Ну и еще напрягают абсолютные пути.
Более верно использовать системные переменные %SYSTEMDRIVE% и %SYSTEMROOT%.

s127d
28-01-2007, 18:26
to Fanzuga
Если я ставлю OemPreinstall=Yes - теряется F6 на текстовом этапе.
Отказ от $OEM$-папок связан именно с этим.


Более верно использовать системные переменные %SYSTEMDRIVE% и %SYSTEMROOT%.
P.S. Ага, уже заменил, но не помогает.

Fanzuga
28-01-2007, 19:19
s127d

Сорри, просмотрел , что нужно без папки $OEM$.
У нас была Похожая тема (http://forum.oszone.net/thread-72000.html).
может она наведет на мысль?

Вообще интересно, а сам файл-то копируется в нужное расположение?
теряется F6 на текстовом этапе
я так понимаю речь идет о W2K поэтоу драйверпаке от Башрат и аддон от Боа Софт в чистом виде применить не удается.
Но можно посмотреть и переделать под 2000. Так как раз вся фишка в интеграции драйверов масссторадж + сохранение функционала F6.

s127d
29-01-2007, 07:07
Вообще интересно, а сам файл-то копируется в нужное расположение?
Сам файл копируется.

Написал ProkVS.
Может ответит.

s127d
29-01-2007, 16:52
ProkVS решил вопрос с помощью аддона по интеграции драйверов.

to ALL
Кто-нибудь успешно запускал файлы из DetachedProgram ?

Fanzuga
30-01-2007, 05:15
s127d

У меня у самого в WINNT.SIF такой код:

[GuiUnattended]
....
DetachedProgram = "%SYSTEMDRIVE%\UIT\RUNP.EXE"

где RUNP.EXE - это SFX архив RAR. Но он у меня кидается на системный раздел из $OEM$

если получилось скопировать файл без $OEM$ это уже хлеб, надо копать дальше, может просто ошибка в путях?

s127d
01-02-2007, 19:03
Странно получается: файл есть, на диск копируется (проверял сразу после текстового этапа), даже запускается? НО ничего не делает...
Файл setupact.log

Запущена графическая часть программы установки.
Программа установки вызвала внешнее приложение C:\WINDOWS\Temp\Presetup.cmd .
C:\WINDOWS\Driver Cache\i386\sp4.cab скопирован в C:\WINDOWS\system32\storprop.dll.
E:\i386\SPOOLSV.EX_ скопирован в C:\WINDOWS\system32\SPOOLSV.EXE.
...

Fanzuga
01-02-2007, 19:11
s127d

Значит бага в Presetup.cmd.
Добавь в конце строк что-то типа ">> %Systemdrive%\Prestup.log" чтобы все команды писались в лог и посмотри на чем спотыкается. Я не силен в ком строке, но может какая то ошибка в синтаксисе, команды копирования.

fox_sly
01-02-2007, 21:52
Fanzuga
У меня у самого в WINNT.SIF такой код:
Код:
[GuiUnattended]
....
DetachedProgram = "%SYSTEMDRIVE%\UIT\RUNP.EXE"
где RUNP.EXE - это SFX архив RAR. Но он у меня кидается на системный раздел из $OEM$

Почти аналогично у меня:
[GuiUnattended]
DetachedProgram = "%SystemRoot%\Temp\Soft_Var.exe"
где Soft_Var.exe это SFX архив 7Zip, но обхожусь без $OEM$, прописываю в DOSNET.INF строчку d1,Soft_Var.exe и в TXTSETUP.SIF строку Soft_Var.exe= 1,,,,,,,45,0,0 файл кидаем в I386, после копирования дистрибутива при установке - он там, где его ждут :)

s127d
02-02-2007, 05:26
to Fanzuga
где RUNP.EXE - это SFX архив RAR
Какой SFX-модуль используете? GUI или консольный?

Fanzuga
02-02-2007, 17:00
s127d

GUI

вот комментарий к архиву:
Path=%SYSTEMDRIVE%\UIT\
SavePath
Silent=1
Overwrite=1

s127d
02-02-2007, 17:27
Мой вариант:

Path=%Systemdrive%
SavePath
Silent=1
Overwrite=1


заметил одну интересную вещь, несмотря на мой комментарий, файл SFX-архив RAR распаковывается в %SystemRoot% , т.е. в Winnt
это на виртуалке, за выходные попробую в реале.
Файл запускается из %SystemRoot%\Temp

Fanzuga
02-02-2007, 17:41
s127d

Может дело в слэше в конце строки?
попробуй так:
Path=%SYSTEMDRIVE%\

s127d
03-02-2007, 20:02
to Fanzuga
Со слешем архив запускается на T-39, распаковывается как надо.

to ALL
Всем спасибо.
Файлы из DetachedProgram запускаются нормально.
Жаль, что не удалось забороть батник (вроде явных ошибок он не содержит), но его можно просто обойти с помощью SFX-архива
:)

Boa Soft
05-02-2007, 21:38
Fanzuga
аддон от Боа Софт в чистом виде применить не удается.
Утилиты и идеалогия работать будут. Только сильно ограничено количество добавляемых в текстовом режиме драйверов.




© OSzone.net 2001-2012