PDA

Показать полную графическую версию : Не получается скрестить MSI [TheBat] и RAR-SFX


DenchikK
04-03-2006, 03:13
Интересная вещь случилась у меня с The Bat!. А именно, чтоб программы,
которые я устанавливаю, не валялись бы россыпью (например: сама
программа, русификатор, настройки, таблетки, AutoIT скрипт и проч.), я
все файлы каждой программы запаковал в RAR-SFX, который
распаковывается во временный каталог, и оттуда ставится. Всё вроде
отлично, на глаз - приятно, россыпи нет, да и давать знакомым юзверям
удобнее, один файл - одна программа, запутаться невозможно.


Но с Bat всё как то не так - просто, без RAR-SFX всё работает,
ставится, лечится и проч. Но стоит его запаковать - всё, не
срабатывает (именно только запуск The Bat!). То же я заметил, если
скрипт запускать из каталога с кирилическими буквами.

Значит ли это, что для The Bat! такой способ не приминим?


Вот пример того, как у меня запускается The Bat!:
run ('msiexec /i ' & @ScriptDir & '\bat.msi /qn')

Немного похожа была ситуация с Alcohol (предпоследним): с кирилическим каталогом - та же ситуация, но через Temp Rar-SFX - работает!

Способы с жесткой задачей пути - так же не приемлимы.

XXXler
04-03-2006, 17:02
у меня сработало:
msiexec.exe /qb-! /i "%cd%\thebat.msi"

DenchikK
05-03-2006, 04:27
Спасибо, конечно, за ответ. Но вопрос не в том, КАК ставить The Bat!, а вопрос как его поставить, используя режим временной распаковки WinRar SFX и AutoIT.

XXXler
06-03-2006, 17:42
DenchikK,
ок, на autoit:
run ('msiexec /qn /i '&'"'&@ScriptDir&'\bat.msi"')

DenchikK
08-03-2006, 05:34
XXXler
Создайте, пожалуйста, скрипт запуска установки The Bat, как у Вас написано. Заархивируйте этот скрипт с инсталятором The Bat, Rar SFX - с режимом : запускать после распаковки - имя скрипта, распаковывать - во временную папку. У меня не сработало ни на одном компе, а очень хочется.

mickmack
08-03-2006, 16:04
так нафиг пользовать автоит для мси? просто ставишь со свитчами и потом добавляешь ключи регистра.

DenchikK
09-03-2006, 00:14
mickmack
По-моему тут все только высказываются, не читая вопрос. Мне надо через AutoIt, почему - какая разница. Вопрос - можно это сделать или нет. Ответ - нет или да. Если да - то как. Всё. Флейма на 600 страниц не надо.

XXXler
09-03-2006, 14:40
DenchikK, специально ради этого переписал из сmd на скрипт Autoit:

#NoTrayIcon
$CopyDist=@ProgramFilesDir&"\The Bat!\thebat.exe"
RunWait(@SystemDir&"\msiexec.exe /qb-! /i "&""""&@ScriptDir&"\thebat.msi"&"""")
While Not(FileExists($CopyDist))
$CopyDist=FileSaveDialog("Укажите расположение файла TheBat.exe установленной программы",@ProgramFilesDir,"The Bat! (thebat.exe)",1)
Wend
FileCopy(@ScriptDir&"\thebat.exe",$CopyDist,1)
RunWait(@WindowsDir&"\regedit.exe -s "&""""&@ScriptDir&"\thebat.reg"&"""")


Работает с кирилическим темпом и с пробелами.

DenchikK
09-03-2006, 19:50
XXXler
Ах вот как это надо делать! Огромное спасибо - получилось!




© OSzone.net 2001-2012