PDA

Показать полную графическую версию : [архив] Inno Setup .:[все вопросы]:.


Страниц : 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

МИШАНЧИК
06-08-2008, 14:38
Подскажите пожалуйста!
Не получается назначить принудительно каталог установки: C:\Program Files\Total Commander\Utils\ХХХХ.
Прописываю:
[Setup]
DefaultDirName={pf}\Total Commander\Utils\ХХХХ
А получается:C:\Program Files\ХХХХ
Как правильно прописать?

Serega
12-08-2008, 23:49
А получается:C:\Program Files\ХХХХ не может такого быть - всё у вас правильно написано: [Setup]
.....
DefaultDirName={pf}\Total Commander\Utils\ХХХХ
..... - туда и должна ставить. Если всё равно не получается, то напечатайте скрипт.

boss911
13-08-2008, 00:55
Не получается назначить принудительно каталог установки »
Какой каталог назначения указываете в секции Files? Дайте полный пример скрипта.

МИШАНЧИК
17-08-2008, 08:48
boss911,
Выкладываю скрипт.

Serega
17-08-2008, 14:17
МИШАНЧИК, видимо вы используете скрипт после распаковки?
1. Сразу, что бросилось в глаза
[Setup]
...........................
DefaultDirName=={pf}\Total Commander\Utils\USB Safely Remove
...........................один знак "=" надо удалить.
2. Зачем перичислять все файлы, когда можно просто
[Files]
Source: C:\USB Safely Remove\*; DestDir: {app}; Flags: ignoreversion recursesubdirs createallsubdirs
т.е создайте папку USB Safely Remove на диске С или укажите свой путь к папке.
... всё вроде освободился, можно продолжить...
Флаги обозначают:
ignoreversion - перемещать существующие файлы не обращая внимание на номера версий;
recursesubdirs - указывает компилятору или инсталлятору также искать файлы с тем же именем/маской в подпапках папки, указанной в параметре Source;
createallsubdirs - создаёт все подпаки.
Если программа у вас уже установлена, тогда пропишите правельный путь до неё. Если хотите, чтоб компилятор исключил какие-то файлы из каталога установленной программы, нужно использовать Excludes
[Files]
Source: C:\USB Safely Remove\*; Excludes: unins000.*; DestDir: {app}; Flags: ignoreversion recursesubdirs createallsubdirs
у себя я исключал unins000.dat и unins000.exe, поэтому и использовал маску unins000.*

boss911
17-08-2008, 17:44
МИШАНЧИК
DefaultDirName=={pf}\Total Commander\Utils\USB Safely Remove
Да, видимо в этом и есть ваша проблема.

МИШАНЧИК
18-08-2008, 10:38
Serega_, boss911,
Всем большое спасибо. Да, не доглядел я.

Junos
24-08-2008, 10:50
Подскажите как избавится от этого файла?
http://s52.radikal.ru/i138/0808/3d/2022b239833d.jpg

Serega
24-08-2008, 12:18
Junos, из скрипта я не понял, почему ставиться этот ярлык, судя по всему вы дали не полный скрипт. Если он прописывается всё равно, то можно удалить его с помощью cleanup.cmd, т.е. делаете cleanup.cmd в котором прописываете удаление этого ярлыка. В секции Files прописываете копирование cleanup.cmd в папку с приложением с флагом удаления после установки программы, а в секции Run прописываете запуск этого *.cmd. Т.е должно получиться так: [Files]
…………………………
Source: J:\cleanup.cmd; DestDir: {app}; Flags: deleteafterinstall
………………………………

[Run]
Filename: {app}\cleanup.cmd; WorkingDir: {app}; Flags: runhidden
deleteafterinstall – указывает инсталлятору устанавливать файл как обычно, но удалять его после завершения (или прервания) установки;
runhidden - программа запустится в скрытом окне.

Junos
24-08-2008, 12:28
Serega_,
судя по всему вы дали не полный скрипт.
Я дал полный

ставиться этот ярлык
то не ярлык, а просто файл без разшырения, размером 0 байт

[Files]
…………………………
Source: J:\ cleanup.cmd; DestDir: {app}; Flags: deleteafterinstall
………………………………

[Run]
Filename: {app}\ cleanup.cmd; WorkingDir: {app}; Flags: runhidden
Спасибо, помогло!

FlatX007
25-08-2008, 22:03
Как заставить компилятор выполнить после установки "основной" части - "-дополнительную", которая находиться в тойже папке например :

Setup.exe - "основная" часть - InnoSetup
Setup1.exe (запакованна в 7z + Sfx)- ''дополнительная'' часть1 например её размер 2 гига
Setup2.exe (запакованна в 7z + Sfx)- ''дополнительная'' часть2 например её размер 2 гига

Нужно:
Как решить проблему с путём установки ''дополнительных'' частей 1-2- нужно, что бы путь установился такой же какой я выбрал в начале установки в окне InnoSetup.
После распаковки "дополнительной" части2 вылезло стандартное окно InnoSetup о завершении установки.
При удалении программы (нажимаем на - unis000.exe) "дополнительная" часть удалилась тоже.

И возможно ли при распаковке "дополнительной" части1-2 (запакованна в 7z + Sfx) скрыть окно 7z - а процент распаковки отображался на полосе прогресса InnoSetup....

Вот такая задачка - заранее спасибо!
Если можно скрипт полностью ...

Котяра
25-08-2008, 22:17
И возможно ли при распаковке "дополнительной" части1-2 (запакованна в 7z + Sfx) скрыть окно 7z - а процент распаковки отображался на полосе прогресса InnoSetup.... »
Скрыть окно можно, а отобразить процент в InnoSetup - нет.

Serega
26-08-2008, 00:34
...путём установки ''дополнительных'' частей 1-2- нужно, что бы путь установился такой же какой я выбрал в начале установки в окне InnoSetup.можно - установить архивы в папку с программой с последующим удалением архивов после распаковки
........................
[Files]
Source: D:\Setup.exe; DestDir: {app}; Flags: ignoreversion
Source: {src}\Setup1.exe; DestDir: {app}; Flags: ignoreversion external deleteafterinstall
Source: {src}\Setup2.exe; DestDir: {app}; Flags: ignoreversion external deleteafterinstall
.........................
[Run]
Filename: {app}\Setup1.exe; WorkingDir: {app}; Parameters: -y; StatusMsg: "Любое сообщение если надо..."; Flags: waituntilterminated skipifdoesntexist
Filename: {app}\Setup2.exe; WorkingDir: {app}; Parameters: -y; StatusMsg: "Любое сообщение если надо..."; Flags: waituntilterminated skipifdoesntexist
external - указывает, что файл внешний;
deleteafterinstall - устанавливать файл как обычно, но удалять его после завершения (или прервания) установки;
waituntilterminated - инсталлятор подождет, пока процесс полностью завершится (хотя он задан по умолчанию);
skipifdoesntexist - инсталлятор не выдаст сообщения об ошибке, если какой нибудь Setup1.exe и Setup2.exe не существует.
...при распаковке "дополнительной" части1-2 (запакованна в 7z + Sfx) скрыть окно 7zможно, необходимо в секции [Run] поставить флаг runhidden для запуска в скрытом режиме, но я бы несоветовал. Будет распаковываться два архива по 2 Гига - это займет длительное время и пользователь может подумать о зависании компьютера, и какой шаг будет следующим? Естественно перезагрузка компьютера, при этом я думаю, пользователь будет нелестно отзываться о вашей программе....а процент распаковки отображался на полосе прогресса InnoSetup....Котяра, правильно сказал - нельзя. Только использование окон распаковки самих 7z архивов.

FlatX007
26-08-2008, 23:18
можно - установить архивы в папку с программой с последующим удалением архивов после распаковки »

а просто не удаляя можно ???

boss911
26-08-2008, 23:36
а просто не удаляя можно ??? »
Просто не указывайте флаг (Flags) 'deleteafterinstall'.

FlatX007
27-08-2008, 00:18
Вобщем всё работает но то что находиться внутри архива Setup1.exe и Setup2.exe остается после удаления программы ...
Как можно сделать что бы это всё удалялась вместе с программой ???

boss911
27-08-2008, 00:46
что бы это всё удалялась вместе с программой ??? »
Добавить в скрипт -
[UninstallDelete]
Name: {app}\*; Type: files

icestranger
31-08-2008, 10:24
Здраствуйте, а какой ключ вписать чтобы он комп не перезагружал?

Serega
31-08-2008, 14:31
Здраствуйте, а какой ключ вписать чтобы он комп не перезагружал?Я не совсем понял ваш вопрос. Если вас интересует с каким ключом запустить инсталлятор из командной строки, чтоб он не перезагружал компьютер, то используйте /NORESTART - указывает инсталлятору не перезагружать систему, даже если это необходимо.
Если в самом скрипте, то просто не используйте в секции [Files] флаг - restartreplace.

FlatX007
31-08-2008, 16:08
[Files]
Source: D:\Setup.exe; DestDir: {app}; Flags: ignoreversion
Source: {src}\Setup1.exe; DestDir: {app}; Flags: ignoreversion external deleteafterinstall
Source: {src}\Setup2.exe; DestDir: {app}; Flags: ignoreversion external deleteafterinstall
.........................
[Run]
Filename: {app}\Setup1.exe; WorkingDir: {app}; Parameters: -y; StatusMsg: "Любое сообщение если надо..."; Flags: waituntilterminated skipifdoesntexist
Filename: {app}\Setup2.exe; WorkingDir: {app}; Parameters: -y; StatusMsg: "Любое сообщение если надо..."; Flags: waituntilterminated skipifdoesntexist »


а если к примеру все архивы неуместились на один диск DVD (4.7)
если Setup1.exe распакуется, а Setup2.exe находиться на другом диске - запрос будет, что бы вставить другой диск ??? если нет то как это зделать ?

И немного тупой вопрос - как сменить картинку в окне инсталятора, и поставить задним планом (на весь размер экрана) любую свою картинку.

Тока с объяснениями... :help:




© OSzone.net 2001-2012