|
Компьютерный форум OSzone.net » Автоматическая установка Windows » Автоматическая установка Windows 2000/XP/2003 » CMD не хочет убивать сам себя. |
|
CMD не хочет убивать сам себя.
|
Пользователь Сообщения: 84 |
Профиль | Отправить PM | Цитировать
Значит так!
При установке я выбираю в BCDW нужный мне способ установки и соответственно выбирается свой winnt.sif в котором есть строка Которая как видно запускает мой файл COMPANY1.cmd. В нем как раз и содержатся лишь то что надо установить лишь для конкретного winnt.sif. (а в RunOnceEx.cmd ставятся стандарные для всех установак приложения) Вот его содержание: cmdow @ /HID @echo off 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:\WIN51 SET CDROM=%%d: START /WAIT %CDROM%\install\sav\COMPANY1.exe START /WAIT %CDROM%\install\sav\sav.exe START /WAIT %systemdrive%\Install\SAV\SAV.msi /QN RUNLIVEUPDATE=0 REBOOT=ReallySuppress START /WAIT %systemdrive%\Cleanup.cmd EXIT cmdow @ /HID RD /S /Q %systemdrive%\Install\ erase cleanup.cmd /s /q del cleanup.cmd /s /q EXIT Ваши советы. ЗЫ: Зачам такой изврат? А чтоб избавиться от необходимости выбора нужного GRC.DAT при установке. А точнее избавиться от мною придуманного способа. Идея лежит тут - http://forum.oszone.net/showthread.p...6690#post36690 |
|
------- Отправлено: 08:23, 30-06-2005 |
(*.*) Сообщения: 36544
|
Профиль | Сайт | Отправить PM | Цитировать Цитата:
@Echo OFF SetLocal enableextensions CLS Echo. Echo I am file (not yet expanded): %0 Echo My Expanded File Name: %~n0 Echo My Expanded Extension: %~x0 Echo My Expanded Name and Extension: %~nx0 Echo My Expanded Drive: %~d0 Echo The Expanded Root of My Drive: %~d0\ Echo Some Other Expanded Path on My Drive: %~d0\SomeOtherPath Echo My Expanded Path: %~p0 Echo My Expanded Drive and Path: %~dp0 Echo. Pause EndLocal GoTo :EOF |
|
------- Отправлено: 11:03, 30-06-2005 | #11 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Сообщения: 53441
|
Профиль | Отправить PM | Цитировать Grenky
В твоем варианте директория Install не удалится, потому что файл COMPANY1.cmd в ней. В секции GUIRunOnce можно указать несколько команд. Поэтому я и предложил: Совершенно лишний пост.. На самом деле все прекрасно удаляется.. Нечаянно ввел в заблуждение Vadikan'а :) |
Последний раз редактировалось Petya V4sechkin, 30-06-2005 в 14:01. Отправлено: 11:05, 30-06-2005 | #12 |
Пользователь Сообщения: 84
|
Профиль | Отправить PM | Цитировать to Petya V4sechkin
Протестил... Удалился В твоем варианте я не уверен что command2 будет ждать отработку command1. Поправь если ошибаюсь. to Vadikan спасибо за разъяснение |
------- Отправлено: 11:15, 30-06-2005 | #13 |
(*.*) Сообщения: 36544
|
Профиль | Сайт | Отправить PM | Цитировать Grenky
Нда, причина как раз и была в Цитата:
Цитата:
|
||
------- Отправлено: 11:18, 30-06-2005 | #14 |
Пользователь Сообщения: 84
|
Профиль | Отправить PM | Цитировать см. мой первый пост. Это первоначальный вариант:
Цитата:
протестил те варианты что описал здесь все работает. |
|
------- Отправлено: 11:25, 30-06-2005 | #15 |
(*.*) Сообщения: 36544
|
Профиль | Сайт | Отправить PM | Цитировать Grenky
Ладно, я выпил достаточно пива, чтобы об'яснить популярно Вместо надо использовать Тогда первый файл вызовет второй, а сам продолжит работу, т.е. закроется (вызываем-то мы последней командой). Тогда второму файлу ничего не помешает удалить директорию, содержащую первый файл, а потом и сам себя. Конечно, протестировать GuiRunOnce я не могу, но только что проверил RunOnceEx. Итак, в %systemdrive%\test помещаем test1.cmd cmdow @ /HID @echo off echo this is a line from the test1,cmd file >> %systemdrive%\file.txt call %systemdrive%\test2.cmd exit Создаем RunOnce.cmd cmdow @ /HID @echo off SET KEY=HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnceEx REG ADD %KEY% /V TITLE /D "Bla-bla-bla" /f REG ADD %KEY%\001 /VE /D "Bla-bla-bla" /f REG ADD %KEY%\001 /V 1 /D "%systemdrive%\test1.cmd" /f exit Ваше здоровье :beer: |
------- Отправлено: 11:46, 30-06-2005 | #16 |
Пользователь Сообщения: 84
|
Профиль | Отправить PM | Цитировать хех нехотит слухать и все
я говорю всё работает Без кучи дополнительный cmd (см. выше) |
------- Отправлено: 12:33, 30-06-2005 | #17 |
Сообщения: 53441
|
Профиль | Отправить PM | Цитировать Grenky
Теперь ясно, где собака порылась. Изначально ошибка была в файле cleanup.cmd, строка "del cleanup.cmd" - естественно, ведь текущая директория совсем не %SystemDrive%. Поэтому и файл не удалялся. А "del %0" замечательно работает, как и предлагал Vadikan. И "rd /S /Q %systemdrive%\Install\" тоже прекрасно работает, даже из батника, который в этой же директории находится. Как и предлагал D@nil. А я че-то затупил, извиняюсь :) |
Отправлено: 14:15, 30-06-2005 | #18 |
Участник сейчас на форуме | Участник вне форума | Автор темы | Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
Поздравляю сам себя | APOSTOL | Флейм | 1782 | 17-06-2024 20:23 | |
WINS/Browse - Обозреватель сети рабочей группы не видит сам себя | andriod | Сетевые технологии | 2 | 10-07-2008 22:49 | |
Скрипт который может сам себя обновить | BuilderMan | Вебмастеру | 8 | 30-09-2006 13:44 | |
В Wi-Fi сети два компа и АР. Один комп не видит сам себя… | Serafon | Сетевые технологии | 2 | 29-05-2006 10:25 | |
Radmin_v2.2 Могу ли я сам себя-- | UTU | Сетевые технологии | 2 | 02-10-2005 10:20 |
|