PDA

Показать полную графическую версию : [решено] создать SFX архив, ярлык на раб.стол и запустить bat файл


Страниц : [1] 2

Scorpkoms
24-02-2011, 10:18
Доброго времени!
Пожалуйста,помогите решить задачу,конечно если в тему,а она такова:
создать SFX архив,после распаковки выкинуть ярлык на раб.стол и запустить
bat файл,который в свою очередь,запускает reg файл с настройками программы.
Все это создается,распаковывается,ярлык на месте,батник запускается,но
reg файл не вносит изменения в реестр,значит батник его не запускает?
Помогите,как это исправить?
Запаковывал Download Master.
Спасибо.

Комментарий к архиву:
;Расположенный ниже комментарий содержит команды SFX-сценария

Path= %PROGRAMFILES%
SavePath
Setup="Download Master\DMaster.bat"
Silent=1
Overwrite=1
Shortcut=D, "Download Master\dmaster.exe", , "Менеджер закачек", "Download Master.lnk",

Nun-Nun
24-02-2011, 10:32
Scorpkoms,

Вы бы хоть указали содержание батника, здесь же не телепаты.

В 7-Zip SFX строчка на запуск reg-файла выглядит примерно так: RunProgram="REGEDIT /S Reg.reg"

В обычном батнике так: Regedit /s Reg.reg

Scorpkoms
24-02-2011, 10:46
Nun-Nun,
Прошу прощения,что не указал,да и содержание такое же:
SFXWinRAR
regedit /s DMaster.reg

Nun-Nun
24-02-2011, 11:31
Scorpkoms,

А не проще ли всё это реализовать в 7-Zip SFX ? Здесь на форуме полно примеров и программ с необходимым для Вас содержимым.
Не знаю, есть ли там что-то ещё в Вашем батнике, но если есть копируемые файлы, можно было бы попробовать так:

;!@Install@!UTF-8!
SetEnvironment="Name=Download Master"
SetEnvironment="NameEXE=DMaster.exe"
SetEnvironment="PathInst=%ProgramFiles%\\%Name%"
Title="Установка %Name%"
InstallPath="%PathInst%"
BeginPrompt="Сейчас будет установлен %Name%"
ExtractTitle="Распаковка файлов..."
ExtractDialogText="Пожалуйста подождите..."
GUIFlags="2+4+8+16+32+2048+4096"
GUIMode="1"
MiscFlags="4"
RunProgram="fm0:hidcon:cmd /c xcopy *.* \"%PathInst%\" /s /e /i /y"
RunProgram="hidcon:DMaster.bat"
RunProgram="REGEDIT /S DMaster.reg"
AutoInstall1="fm0:hidcon:cmd /c xcopy *.* \"%PathInst%\" /s /e /i /y"
AutoInstall1="hidcon:DMaster.bat"
AutoInstall1="REGEDIT /S DMaster.reg"
Shortcut="D,{%%T\\%NameEXE%},{},{},{},{%Name%},{%%T}"
Shortcut1="D,{%%T\\%NameEXE%},{},{},{},{%Name%},{%%T}"
FinishMessage="%Name% установлен!"
Delete="%%T\\DMaster.bat"
Delete="%%T\\DMaster.reg"
;!@InstallEnd@!

Scorpkoms
24-02-2011, 11:57
Nun-Nun,
Прошу прощения,я в этом не очень силен и как я понял этот
батник запускает мой DMaster.bat файл с последующим удалением
файлов *.bat *.reg ? Или это файл сценария для 7zip SFX?

Nun-Nun
24-02-2011, 12:26
батник запускает мой DMaster.bat файл с последующим удалением
файлов *.bat *.reg ?»
Ну разумеется, удаляет. Если удаление не нужно - можете убрать эти строки, только тогда батник и reg-файл будут скопированы в папку программы вместе с остальными файлами.
Или это файл сценария для 7zip SFX?»
Да, это файл сценария для 7zip SFX? Не подходит?

Scorpkoms
24-02-2011, 12:57
Nun-Nun,
Да, это файл сценария для 7zip SFX? Не подходит? »

Я хотел бы в WinRAR,с этим архиватором никак не разберусь. Для WinRAR напишите
пожалуйста,если возможно. Спасибо.

Nun-Nun
24-02-2011, 15:03
Scorpkoms,

Мне быстрее и проще сделать 7zip SFX, если куда-нибудь выложите свои файлы. Вышеприведённого скрипта уже вполне достаточно, не хватает только файлов Вашей программы, т.е. файлов, которые копируются на компьютер.

Index2000
24-02-2011, 15:09
Если я правильно понял, то распаковывается все это дело в Програм Файлс, ну и батник работает, соответственно, в ней же. А рег-файл внутри папки ДМ. Если я прав, то нужно прописать что-то вроде
regedit /s "Download Master\DMaster.reg"

Nun-Nun
24-02-2011, 15:46
Если я правильно понял, то распаковывается все это дело в Програм Файлс, ну и батник работает, соответственно, в ней же. А рег-файл внутри папки ДМ. Если я прав, то нужно прописать что-то вроде »
Разумеется, в батнике просто нужно было указать полный путь. Только после отработки reg-файлу и батнику в папке с программой делать нечего.

Scorpkoms
24-02-2011, 17:23
Index2000, Nun-Nun,

Спасибо попробую.

FreshMen85
25-02-2011, 11:08
mamont1, вы не много не правильно создаёте архив, выберать пункт "непрерывный архив" совсем не обязательно. Вот что написанно в справке к WinRaR'u:
1. обновление непрерывных архивов (т.е. добавление файлов в уже существующий архив или их удаление из него) происходит медленнее, чем обновление обычных архивов;
2. чтобы извлечь один файл из непрерывного архива, нужно проанализировать все предыдущие заархивированные файлы, поэтому извлечение отдельных файлов из середины или конца непрерывного архива происходит медленнее, чем извлечение из обычного архива. Однако если из непрерывного архива извлекаются все или расположенные последовательно первые файлы, то в этом случае скорость распаковки практически равна скорости распаковки обычного архива;
3. если в непрерывном архиве какой-либо файл окажется повреждённым, то не удастся извлечь и все файлы, следующие после него. Поэтому при сохранении непрерывного архива на потенциально ненадёжных носителях настоятельно рекомендуется добавлять информацию для восстановления (впрочем, информация для восстановления может оказаться нелишней и в других случаях, поэтому без веских причин пренебрегать ей не следует).

А так же не обязательно включать опцию "Скрыть всё" (есть же ключ /S), так как остается возможность использовать созданный SVX архив для запуска с возможностью переименовать путь распаковки.

Scorpkoms
25-02-2011, 22:05
mamont1,
1. Не обновляю
2. Не извлекаю
3. Поэтому и пакую - неприрывно »
Может я не правильно уловил мысль,но как то не вяжется то,что сказано,
пакую непрерывно,это уже обновление! Првильно указал FreshMen85.

Index2000
25-02-2011, 23:25
Подозреваю, что под паковкой имелось в виду создание архива, а не обновление.

Непрерывные архивы обычно немного меньше по размеру, поэтому если обновлений архива не предвидится, лучше использовать их.

Scorpkoms
26-02-2011, 23:01
Все это создается,распаковывается,ярлык на месте,батник запускается,но
reg файл не вносит изменения в реестр,значит батник его не запускает?
Помогите,как это исправить? »
Проблема устранена,убрал из комментария это:
;Расположенный ниже комментарий содержит команды SFX-сценария
Path= %PROGRAMFILES%
SavePath
Setup="Download Master\DMaster.bat"
Silent=1 Overwrite=1
Shortcut=D, "Download Master\dmaster.exe", , "Менеджер закачек", "Download Master.lnk"
и все нормально.

Nun-Nun
27-02-2011, 11:09
Scorpkoms,

Не понимаю Ваших танцев с бубном. Я же с самого начала предложил Вам выложить куда-нибудь свои файлы. Сделать готовый SFX 7-Zip заняло бы от силы минут 5.

Scorpkoms
27-02-2011, 12:55
Nun-Nun,
Спасибо конечно,хотелось самому понять все! Если за всех будет делать кто то,
знаний не прибавиться. Не так?
Если хотите помочь,подскажите как в обычном батнике удалить не нужные
уже файлы? Спасибо.

Nun-Nun
27-02-2011, 15:37
Scorpkoms,

Поскольку не указываете, где именно удалить, могу предложить только самое обычное Del "Путь\название Вашего файла"

Scorpkoms
27-02-2011, 21:13
Nun-Nun,
Путь указан в комментарию к архиву,см.выше.

shao
27-02-2011, 22:05
подскажите как в обычном батнике удалить не нужные
уже файлы? »

Scorpkoms, А зачем Вам батником удалять ?
При создании архива есть же пункт "Удалить после распаковки". Вот и указываете , какие файлы нужно удалить.

Кстати , а зачем Вам запускать батник для запуска рег-файла, чтобы внести в реестр что-то ?
Можно сразу в батнике указать , что Вы хотите зарегистрировать. В крайнем случае воспользуйтесь утилитой reg2bat, чтобы конвертировать рег-файл в пакетный.
Можно взять в комплекте здесь: http://forum.oszone.net/thread-172130-7.html




© OSzone.net 2001-2012