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

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

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

Сообщение ErikPshat »

Ребята, нубский вопрос...

Как средствами Inno Setup создать новый пустой текстовой файл?



Я знаю только один хак создания через лист:



Код:

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

var
  List: TStringList; txt: string; res: Integer;
begin
  txt:= ExpandConstant('{tmp}\file.txt');
   List:= TStringList.Create;
   List.Add('Добавляем первую строку в файл');
   List.SaveToFile(txt);
   List.Free;
end;

Может быть можно просто написать эту строку отдельно, как самостоятельную:



Код:

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

SaveToFile(file.txt);

Но по-моему к этому должна предшествовать какая-та трансляция.
Аватара пользователя
El Sanchez

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

Сообщение El Sanchez »

Доброго,

подскажите, есть ли возможность установить разные значения для VersionInfoDescription (в разделе [Setup]) в зависимости от локализации

данное поле отображается в описании установщика, если выбрать "Свойства", по клику ПКМ
Аватара пользователя
ErikPshat

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

Сообщение ErikPshat »

El Sanchez, о да, спасибо, проверил работает.

Если указано False, тогда перезаписывает файл, а если указать True, тогда записывает строку в конец файла.



А я перелопатил в документации весь хэлп и почему-то пропустил эту команду. Оказывается она там есть )))

Спасибо ещё раз!
Аватара пользователя
ErikPshat

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

Сообщение ErikPshat »

Цитата TROY Diamond:



для упаковки, БОЛЬШОГО количества имеющихся папок, в отдельные архивы ZIP, с заданием ОПРЕДЕЛЁННОГО расширения и обычной степенью сжатия, в процессе установки, с последовательным удалением каждой папки СРАЗУ ЖЕ ПОСЛЕ СОЗДАНИЯ АРХИВА,
Скрипты Inno Setup. Помощь и советы [часть 9]




Вы что — решили очередного вымогателя «запилить», коллега Изображение?
Аватара пользователя
ROMKA-1977

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

Сообщение ROMKA-1977 »

Iska, давайте по существу, я же написал для чего!
Аватара пользователя
ErikPshat

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

Сообщение ErikPshat »

TROY Diamond, эта шутка была.



По существу — я хотел бы уяснить смысл сих действий, которые по существу приводят лишь к увеличению времени установки. В чём глубинный смысл? Чем Вам так не нравятся архивы внутри инсталляции?



P.S. На выбор смотрите
Скрипты Inno Setup. Помощь и советы [часть 5]
,
два
.
Аватара пользователя
Chudmin

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

Сообщение Chudmin »

Здравствуйте!

Подскажите пожалуйста, как реализовать, чтобы при запуске инсталятора, например, "Моя_прога", если запущена уже ранее установленная программа "Моя_прога.exe", то сразу же, без вопросов, "Моя_прога.exe" закрывалась?
Аватара пользователя
Iska

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

Сообщение Iska »

Цитата ADRebus:



подскажите, есть ли возможность установить разные значения для VersionInfoDescription (в разделе [Setup]) в зависимости от локализации

данное поле отображается в описании установщика, если выбрать "Свойства", по клику ПКМ
Скрипты Inno Setup. Помощь и советы [часть 9]




ADRebus, локализации чего?


Цитата TROY Diamond:



Подскажите, пожалуйста, аналог кода ниже, с использованием консольных библиотек от 7-Zip, WinRAR? библиотек Inno Setup и т.п. , для упаковки, БОЛЬШОГО количества имеющихся папок, в отдельные архивы ZIP, с заданием ОПРЕДЕЛЁННОГО расширения и обычной степенью сжатия, в процессе установки, с последовательным удалением каждой папки СРАЗУ ЖЕ ПОСЛЕ СОЗДАНИЯ АРХИВА, из секции CODE, в Inno Setup, а НЕ с использованием батника и т.п. из секции RUN!
Скрипты Inno Setup. Помощь и советы [часть 9]




TROY Diamond,



Скрытый текст

[spoiler]Код:
[/spoiler]

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

[Files]
Source: 7za.exe; Flags: dontcopy
; {app}\data\test01
Source: {app}\test01\*; DestDir: {app}\data\test01; Flags: ignoreversion overwritereadonly recursesubdirs createallsubdirs sortfilesbyextension
Source: dummy; DestDir: {app}\data; AfterInstall: Pack(ExpandConstant('{app}\data\test01')); Flags: deleteafterinstall
; {app}\data\test02
Source: {app}\test02\*; DestDir: {app}\data\test02; Flags: ignoreversion overwritereadonly recursesubdirs createallsubdirs sortfilesbyextension
Source: dummy; DestDir: {app}\data; AfterInstall: Pack(ExpandConstant('{app}\data\test02')); Flags: deleteafterinstall
[Code]
procedure Pack(const APath: string);
var
  ResultCode: Integer;
begin
  if not FileExists(ExpandConstant('{tmp}\7za.exe')) then
    ExtractTemporaryFile('7za.exe');
  if not Exec(ExpandConstant('{tmp}\7za.exe'), Format('a -tzip -sdel -y "%0:s.pk3" .\%0:s\*', [ExtractFileName(APath)]), ExtractFileDir(APath), SW_HIDE, ewWaitUntilTerminated, ResultCode) then
    RaiseException(Format('Add new data from ''%s'' to archive ''%s.pk3'' failed with error 0x%.8x (%s)', [APath, ExtractFileName(APath), ResultCode, SysErrorMessage(ResultCode)]));
  if not RemoveDir(APath) then
  begin
    ResultCode := DLLGetLastError;
    RaiseException(Format('Unable to delete empty folder ''%s''. Error code: 0x%.8x (%s)', [APath, ResultCode, SysErrorMessage(ResultCode)]));
  end;
end;








Цитата Iska:



По существу — я хотел бы уяснить смысл сих действий, которые по существу приводят лишь к увеличению времени установки. В чём глубинный смысл? Чем Вам так не нравятся архивы внутри инсталляции?
Скрипты Inno Setup. Помощь и советы [часть 9]




Iska, размер инсталлятора по схеме zip + LZMA больше, чем просто LZMA. Хочет сэкономить на размере в ущерб времени установки.
Аватара пользователя
Chudmin

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

Сообщение Chudmin »

Цитата El Sanchez:



Iska, размер инсталлятора по схеме zip + LZMA больше, чем просто LZMA.
Скрипты Inno Setup. Помощь и советы [часть 9]




El Sanchez, сильно больше?



Кстати, почему не рекомендуете коллеге TROY Diamond Вашу собственную разработку, на которую я
Скрипты Inno Setup. Помощь и советы [часть 5]
?!




Цитата TROY Diamond:



Написал вам в Личку - ваш ящик переполнен, посмотрите, пожалуйста!
Скрипты Inno Setup. Помощь и советы [часть 9]




Пишите прямо здесь.
Аватара пользователя
Iska

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

Сообщение Iska »

Chudmin, и этого быть не должно (разве что «Моя_прога» — это сервис).
Ответить

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