[архив] Скрипты Inno Setup. Помощь и советы [часть 2]

Ответить
 • Просмотры: 2
Аватара пользователя
RapMan

Re: [архив] Скрипты Inno Setup. Помощь и советы [часть 2]

Сообщение RapMan »

RapMan, у меня на Windows 7 то же самое, режим совместимости не помогает Изображение На ХР нормально работает...
Аватара пользователя
A1EXXX

Re: [архив] Скрипты Inno Setup. Помощь и советы [часть 2]

Сообщение A1EXXX »

Цитата Lancer2404:



Имею код для создание бекапа.Но бекапит только то что в корне.А че дописать чтобы и в подпапках бекапил.
[архив] Скрипты Inno Setup. Помощь и советы [часть 2]




Чтоб не изобретать велосипед, в Справка, руководство, примеры есть Коллекция скриптов, в архиве есть скрипт SHFileOperation.iss, где реализована работа с директориями и файлами.

Просто добавляете в самое начало вашего скрипта #include "путь до скрипта\SHFileOperation.iss" и затем используете функцию из этого скрипта.


Пример




Код:

Код: Выделить всё

#include "здесь укажите путь до скрипта..\SHFileOperation.iss"
[Setup]
AppName=My Program
AppVerName=My Program v 1.5
DefaultDirName={pf}\My Program
OutputDir=.
Compression=lzma/ultra
InternalCompressLevel=ultra
SolidCompression=yes
[Languages]
Name: rus; MessagesFile: compiler:Languages\Russian.isl
[Tasks]
Name: arc; Description: "Сделать резервную копию файлов"
[Code]
var
  Page: TInputDirWizardPage;
function ShouldSkipPage(PageID: Integer): Boolean;
begin
  Result:= (PageID = Page.ID) and not IsTaskSelected('arc');
end;
procedure InitializeWizard();
begin
  Page:= CreateInputDirPage(wpSelectTasks, 'Выберите папку бэкапа.',
        'Куда вы засуните файлы бэкапа.Оттуда вы сможете восстановить свои файлы',
        'Для продолжения нажмите далее.' + #10#13#10#13 +
        'Если хотите выбрать другую папку щелкните Обзор.',
        False, 'Backup');
  Page.Add('');
  Page.Values[0]:= ExpandConstant('{sd}\GTAIV\Backup');
end;
procedure CurStepChanged(CurStep: TSetupStep);
begin
  if (CurStep = ssPreInstall) and IsTaskSelected('arc') then
    CopyDir(ExpandConstant('{app}'), Page.Values[0]);
end;
Аватара пользователя
RapMan

Re: [архив] Скрипты Inno Setup. Помощь и советы [часть 2]

Сообщение RapMan »

RapMan, понятия не имею, я этой прогой не пользуюсь....
Аватара пользователя
A1EXXX

Re: [архив] Скрипты Inno Setup. Помощь и советы [часть 2]

Сообщение A1EXXX »

Цитата mosre:



Каким цветом нужно подменять кликабельное лого, для чёрного фона..

Во всех примерных скриптах создания сего идёт "фуксия", а какой нужен именно для чёрного..
[архив] Скрипты Inno Setup. Помощь и советы [часть 2]




Да цвет там не важен. Просто рисуете логотип на черном фоне и он сливается с черным цветом инсталла.
Аватара пользователя
RapMan

Re: [архив] Скрипты Inno Setup. Помощь и советы [часть 2]

Сообщение RapMan »

Доброго времени суток.

Люди, в программенге не особо забираюсь, но по работе очень много приходить собирать IS-ом. Сейчас мне требуется что бы после установки игры, т.е. перед экраном с вопросом "Вы хотите запустить ******", сделать тихую установку toolbar'a. Т.е. нужен экран на котором я уже доработаю 3 варианта установки, ссылки на сайт и т.д.

Кто поможет? Заранее благодарен!
Аватара пользователя
Serega

Re: [архив] Скрипты Inno Setup. Помощь и советы [часть 2]

Сообщение Serega »

Цитата mosre:



Такого чуда неполучается добиться используя вот этот код..
[архив] Скрипты Inno Setup. Помощь и советы [часть 2]




В коде все правильно. Покажите весь скрипт
Аватара пользователя
STRELOK

Re: [архив] Скрипты Inno Setup. Помощь и советы [часть 2]

Сообщение STRELOK »

Цитата Serega:



Цитата Lancer2404:

Имею код для создание бекапа.Но бекапит только то что в корне.А че дописать чтобы и в подпапках бекапил. »

Чтоб не изобретать велосипед, в Справка, руководство, примеры есть Коллекция скриптов, в архиве есть скрипт SHFileOperation.iss, где реализована работа с директориями и файлами.

Просто добавляете в самое начало вашего скрипта #include "путь до скрипта\SHFileOperation.iss" и затем используете функцию из этого скрипта.

Пример

Код:

#include "здесь укажите путь до скрипта..\SHFileOperation.iss"

[Setup]

AppName=My Program

AppVerName=My Program v 1.5

DefaultDirName={pf}\My Program

OutputDir=.

Compression=lzma/ultra

InternalCompressLevel=ultra

SolidCompression=yes

[Languages]

Name: rus; MessagesFile: compiler:Languages\Russian.isl

[Tasks]

Name: arc; Description: "Сделать резервную копию файлов"

Код: Выделить всё


var

 Page: TInputDirWizardPage;

function ShouldSkipPage(PageID: Integer): Boolean;

begin

 Result:= (PageID = Page.ID) and not IsTaskSelected('arc');

end;

procedure InitializeWizard();

begin

 Page:= CreateInputDirPage(wpSelectTasks, 'Выберите папку бэкапа.',

 'Куда вы засуните файлы бэкапа.Оттуда вы сможете восстановить свои файлы',

 'Для продолжения нажмите далее.' + #10#13#10#13 +

 'Если хотите выбрать другую папку щелкните Обзор.',

 False, 'Backup');

 Page.Add('');

 Page.Values[0]:= ExpandConstant('{sd}\GTAIV\Backup');

end;

procedure CurStepChanged(CurStep: TSetupStep);

begin

 if (CurStep = ssPreInstall) and IsTaskSelected('arc') then

 CopyDir(ExpandConstant('{app}'), Page.Values[0]);

end;

------- [url=viewtopic.php?p=2804029#p2804029]»[/url]
		
	
	


А к файлам надо добавлять BEforeinstall:Createbackup.Или что?А то так не действует
Аватара пользователя
YURSHAT

Re: [архив] Скрипты Inno Setup. Помощь и советы [часть 2]

Сообщение YURSHAT »

Цитата Lancer2404:



А к файлам надо добавлять BEforeinstall:Createbackup.Или что?
[архив] Скрипты Inno Setup. Помощь и советы [часть 2]




Данный скрипт копирует, перед началом установки всю папку {app}, вместе со всеми файлами и подпапками:



Код:

Код: Выделить всё

  if (CurStep = ssPreInstall) and IsTaskSelected('arc') then
    CopyDir(ExpandConstant('{app}'), Page.Values[0]);

если нужно просто копировать файлы, допустим по маске, то замените CopyDir(ExpandConstant('{app}'), Page.Values[0]);, на

CopyFiles(ExpandConstant('{app}'), Page.Values[0], '*.dll'); - в данном случае будут скопированы все файлы имеющие расширение *.dll
Аватара пользователя
Serega

Re: [архив] Скрипты Inno Setup. Помощь и советы [часть 2]

Сообщение Serega »

А если мне надо сделать только копии заменяемых файлов?
Аватара пользователя
Serega

Re: [архив] Скрипты Inno Setup. Помощь и советы [часть 2]

Сообщение Serega »

Цитата Lancer2404:



А если мне надо сделать только копии заменяемых файлов?
[архив] Скрипты Inno Setup. Помощь и советы [часть 2]




Вы честное слово, как в одном очень известном фильме... А у вас нет точно такого же, но с сиреневыми пуговицами...

Какой вопрос поставили, такой ответ и получили.

Как вы решили автоматически определить заменяемые файлы? Нужен какой-то список файлов в вашем инсталляторе, затем он сверяется с наличием с именами файлов в каталоге и если имена совпадают, то копирует их. Или все имена прописывать в ручную, т.е. if FileExists(FileName) then копируем...
Ответить

Вернуться в «Автоматическая установка приложений»