Показать полную графическую версию : Скрипты Inno Setup. Помощь и советы [часть 4]
TROY Diamond
19-12-2011, 18:29
Задание всоего значения требуемого места на диске.
Есть ли противоположное параметру "ExtraDiskSpaceRequired"?
Тут уже 100 раз спрашивали подобное... НО ВЫ СНАЧАЛА ВНИМАТЕЛЬНО И ВДУМЧИВО ПРОЧИТАЙТЕ, У МЕНЯ НЕМНОГО ДРУГОЕ!!!
В секции "[Setup]" есть параметр "ExtraDiskSpaceRequired", который позволяет "накрутить" увеличить реально-требуемое свободное место на ЖД...
А если МНЕ НАОБОРОТ НУЖНО УМЕНЬШИТЬ... к примеру, во время установки у меня копируются/создаются "временные файлы", которые сразу же удаляются... и места требуется намного меньше.
Но установщик считает размер всего упакованного в него...
Или как задать своё значение требуемого места на ЖД в "стандарте"?
Есть много вариантов, но они только на увеличение: если места не хватает (в соответствии с заданным значением), то кнопка "Далее"/"Установить" не активна.
А если хватает (в соответствии с заданым значением), то "пропускает", НО ДАЛЬШЕ ПОЯВЛЯЕТСЯ "СТАНДАРТНОЕ ОКНО" с предупреждением, что места не хватает!
Это конечно, не страшно, установку можно продолжить, НО пользователя, это может смутить. Как его убрать и/или "подкорректировать стандарт"?!
Я ЗАДАЮ, ЧТО: Требуется, к примеру, 6 ГБ (а содержимое весит около 8 ГБ), если у пользователя есть 6 ГБ (а 8 ГБ, к примеру нет!), то кнопка "Далее" активна, но после нажатия выскакивает "стандартное" предупреждение!
Я даже не знаю как оно называются - обычное стандартное предупреждение выскакивает:
Недостаточно места на диске
"Установка требует не менее ... свободного места, а на выбранном Вами диске доступно только ... Вы желаете тем не менее продолжить установку?"
Можно его убрать?
sergey3695
19-12-2011, 18:50
Наложение изображений на стандартные кнопки - пример, показывающий как использовать свои изоброжения на кнопках, (ссылка на сообщение); »
Только заметил. =) (орфография).
TROY Diamond
19-12-2011, 19:56
1. Как сделать, чтобы первая ("Вас приветствует....") и последняя ("Завершения мастера...") страницы инсталлятора, - остались БЕЗ изменения,
со стандартной картинкой (164x314), а на все остальные (включая, "Лицензионное соглашение", "Важную информацию" и т.п.) наложить картинку (или разные) на все окна?
НО с полным сохранением всего текста, его размера, цвета и местоположения, с "разделением", и кнопками, короче всё как в оригинале!
Если можно, то чтобы разные картинки на каждое окно... я сделал их полупрозрачными, поэтому всё будет прекрасно видно как текст, так и фон!
2. Как сделан этот установщик? По принципу NFS Undercover?
http://s008.radikal.ru/i304/1112/89/7f61c7e41b36t.jpg (http://s008.radikal.ru/i304/1112/89/7f61c7e41b36.jpg)
Почему возникают проблемы с нормальным отображением кириллицы? Дело в кодовой странице и/или использовались нестандартные шрифты?
TROY Diamond
19-12-2011, 20:21
3. Как на странице "Выбор дополнительных задач", сделать возможным выбор только опередённых пунктов (задач).
К примеру, если пользователь ставит "галочку" в первом пункте: "Установить такое то ПО", то второй пункт должен быть НЕдоступен и наоборот!!!
У меня просто здесь не совсем "совместимые задачи", поэтому если пользователь НЕ знает, то лучше блокировать ему одновременный выбор...
4. Создание *.ini
Как перезаписывать добавлять, данные в уже существующий?
Как заменять/добавлять данные в файл если он имеет атрибуты: "Только чтение", и/или "Скрытый"?
Как добавлять несколько значений?
КАК СДЕЛАТЬ ИНТЕРВАЛ МЕЖДУ строчками [Key] и [String], например:
[...]
Тут "пусто" (отсуп, пробел между строчками)
А дальше значение
valyok666
19-12-2011, 21:34
TROY Diamond, тот скрипт Q3 картинка затемнена в фотошопе,тема tiger а остальное похоже на закос под Fenixxa
valyok666
20-12-2011, 05:51
TROY Diamond, у тебя стоко вопросов читай справку!!!
TROY Diamond
20-12-2011, 16:56
Задание своего значения требуемого места на диске.
Есть ли противоположное параметру "ExtraDiskSpaceRequired" или как убрать стандартное предупреждение о нехватке места?
МНЕ НАОБОРОТ НУЖНО УМЕНЬШИТЬ размер... к примеру, во время установки у меня копируются/создаются "временные файлы",
которые сразу же удаляются... и места требуется намного меньше.
Но установщик считает размер всего упакованного в него...
Я вот так вот сделал:
1. Задал свое значение с помощью кода, с надпись "Требуется как минимум...", - скрыл.
Если места на ЖД меньше значения, чем я задал, то кнопка "Далее" не активна:
http://i003.radikal.ru/1112/90/60f63358f638t.jpg (http://i003.radikal.ru/1112/90/60f63358f638.jpg)
2. НО возникла другая проблема - Если размер свободного места, соответствует заданному мной значению,
но меньше, чем весит всё содержимое, то установку продолжить-то можно, НО ВЫЛЕЗЕТ СТАНДАРТНОЕ ПРЕДУПРЕЖДЕНИЕ!!!
ЭТО НЕ СТРАШНО, т.к. в процессе установки файлы перепакуются, а "хвосты и мусор" удалятся, -
и всё будет весить намного меньше. Поэтому мне не нужно стандартное предупреждение... чтобы не смущать пользователя!
http://s017.radikal.ru/i443/1112/10/059cbd5ca4d8t.jpg (http://s017.radikal.ru/i443/1112/10/059cbd5ca4d8.jpg)
МНЕ НУЖНО, ЧТОБЫ РАЗМЕР ВЫСЧИТЫВАЛСЯ НЕ ПО СОДЕРЖИМОМУ, А ПО МОЕМУ ЗНАЧЕНИЮ!!!
Что делать и/или как убрать стандартное предупреждение?
valyok666
20-12-2011, 17:00
TROY Diamond, я видел что похожее но через ботву)стандартное не видел
TROY Diamond,
читайте справку. там есть 3 примера как сделать свое значение требуемого места на диске.
TROY Diamond
20-12-2011, 18:06
TROY Diamond,
читайте справку. там есть 3 примера как сделать свое значение требуемого места на диске.
Спасибо, я уже это сделал, смотрите скрины и внимательно читайте, пожалуйста... МНЕ НАДО УБРАТЬ "СТАНДАРТНОЕ ПРЕДУПРЕЖДЕНИЕ"!!!
valyok666
21-12-2011, 03:44
TROY Diamond, хватить писать по пол страницы!чем меньше вопрос - тем быстрее получишь ответ
Devils Night
21-12-2011, 10:09
Полистал справку, нашёл только три примера, но оно не то что нужно.
В общем нужно чтобы перед инсталяцией, бэкапилась (перемещалась в папку Backup) вся папка {app}\My Program со всеми под папками и файлами, и независимо от заменяемых файлов. Как это реализовать?
хватить писать по пол страницы! »Лучше бы так все следили за тем, чтоб коды и картинки под спойлер прятали.
valyok666
21-12-2011, 13:28
Devils Night,
а такой код
[Setup]
AppName=MyProg
AppVerName=MyProg
DefaultDirName={pf}\MyProg
DefaultGroupName=MyProg
[Code]
var
MyTask: TCheckBox;
function MoveFile(const srcFile, destFile: PChar): Integer; external 'MoveFileA@kernel32.dll stdcall';
procedure CurStepChanged(CurStep: TSetupStep);
var
FindFiles: TFindRec;
i: integer;
MyFiles: array of string;
MyDir, BackDir: string;
begin
if CurStep=ssInstall then begin
if MyTask.Checked then begin
MyFiles:=['TS3.exe','gameplay.package','*.precomp','*.jpg']; // указать файлы или маски нужные для бакупа через запятую. при указании маски '*' бакупятся все файлы с вложенными папками
MyDir:=ExpandConstant('{app}'+'\Game\Bin\'); //папка откуда бакупить
BackDir:=ExpandConstant('{app}'+'\Backup\'); // папка куда бакупить
for i:=0 to GetArrayLength(MyFiles)-1 do
begin
if FindFirst(MyDir+MyFiles[i], FindFiles) then begin
repeat
if not DirExists(BackDir) then begin
CreateDir(BackDir);
end;
MoveFile(MyDir+ FindFiles.Name, BackDir+FindFiles.Name);
until not FindNext(FindFiles);
FindClose(FindFiles);
end;
end;
end;
end;
end;
procedure InitializeWizard();
begin
MyTask:=TCheckBox.Create(WizardForm);
with MyTask do
begin
Parent:=WizardForm.SelectDirPage;
Caption:='Сделать Бэкап';
Left:=ScaleX(0);
Top:=ScaleY(100);
Width:=ScaleX(400);
Height:=ScaleY(15);
TabOrder:=0;
Checked:=True;
end;
end;
procedure CurUninstallStepChanged(CurUninstallStep: TUninstallStep);
var
FindFiles: TFindRec;
MyDir, BackDir: string;
begin
if CurUninstallStep = usPostUninstall then begin
MyDir:=ExpandConstant('{app}'+'\Game\Bin\'); //папка куда возвращать файлы
BackDir:=ExpandConstant('{app}'+'\Backup\'); // папка откуда брать файлы
if DirExists(BackDir) then begin
if MsgBox('Восстановить данные из бэкапа?', mbConfirmation, MB_YESNO) = IDYES then begin
if FindFirst(BackDir+'*', FindFiles) then begin
repeat
MoveFile(BackDir+ FindFiles.Name, MyDir+FindFiles.Name);
until not FindNext(FindFiles);
FindClose(FindFiles);
RemoveDir(BackDir);
end;
end;
end;
end;
end;
EvilAlex
21-12-2011, 21:26
Доброго времени суток форумчане...
Нуждаюсь в вашей помощи. А именно мне нужно добавить исдон 0.6ф в мой скрипт.
Пытался сам, перечитал справку раза на 3, все что впитал из нее и до чего додумался не помогло.
Если ктото может помочь то вот ссылка (http://rghost.ru/35531420), в архиве оба скриптаи файлы...
Заранее благодарю.
EvilAlex
22-12-2011, 10:16
Спасибо, но возникла продблема после того как скачал, немогу распаковать архи или просто войти, выдает:
http://rghost.ru/35537360/thumb.png (http://rghost.ru/35537360.view)
valyok666
22-12-2011, 10:26
EvilAlex,Держи (http://rghost.ru/35537432)
обращайся)
EvilAlex
22-12-2011, 10:28
valyok666, все норм, спасибо огромное.
Akella2007
22-12-2011, 14:25
Вопрос по выбору языка по умолчанию.
Установка на трех языках. Т.е. пользователю перед установкой показывается диалог выбора языка. Как указать, что по умолчанию должен быть украинский?
El Sanchez
22-12-2011, 18:48
Вопрос по выбору языка по умолчанию.
Установка на трех языках »
Akella2007,
[Setup]
LanguageDetectionMethod=none
[Languages]
Name: ua; MessagesFile: compiler:Languages\Ukranian.isl
Name: ru; MessagesFile: compiler:Languages\Russian.isl
Name: en; MessagesFile: compiler:Default.isl
Akella2007
23-12-2011, 10:43
Ага, я понял, первым должен быть желаемый язык по умолчанию + LanguageDetectionMethod=none
Спасибо
© OSzone.net 2001-2012
vBulletin v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.