Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Автоматическая установка Windows » Автоматическая установка приложений » Скрипты Inno Setup. Помощь и советы [часть 4]

Закрытая тема
Настройки темы
Скрипты Inno Setup. Помощь и советы [часть 4]

Аватара для El Sanchez

Ветеран


Contributor


Сообщения: 1273
Благодарности: 1030


Конфигурация

Профиль | Отправить PM | Цитировать


Изменения
Автор: Vadikan
Дата: 22-05-2012
Описание: Закрыто
Внимание! Данная тема предназначена только для обсуждения написания скриптов !
Остальные вопросы, а также последние версии компилятора в теме
Inno Setup. Прочие вопросы.


Показать/скрыть: Справка, руководство, примеры:
Показать/скрыть: Ссылки на примеры скриптов:
Показать/скрыть: Дополнительные программы для Inno Setup:
  • ISTool - неплохой редактор скриптов Inno Setup.
    Последняя версия: 5.3.0.1 [29.09.2009] - Скачать | зеркало;

  • Inno Script Generator - генератор скриптов Inno Setup. Обладает некоторыми полезными функциями, которых нет ни у самого Inno Setup, ни у ISTool.
    Последняя версия: 1.0.3.1 [23.03.2008] - Скачать | зеркало на русифицированную программу;
    Примечание: Родной сайт www.hisoft2000.de более недоступен, поэтому здесь расположены сторонние ссылки.

  • Inno Setup Form Designer - редактор страниц Inno Setup, можно создавать свои страницы.
    Последняя версия: 2.0.8 [12.11.2006] - Скачать;
    Примечание: Родной сайт http://isfd.kaju74.de/index.php?isfd более недоступен, поэтому здесь расположены сторонние ссылки.

  • Inno Setup GameScript Generator - программа генерирует скрипты для Inno Setup . С помощью GameScript Generator и Inno Setup вы сможете быстро создать простенький инсталляционный пакет для любой игры. В инсталлятор можно встроить музыку, слайдшоу и фоновый рисунок. Для специалистов созданный скрипт, возможно, будет неплохой заготовкой для дальнейшей модернизации;

  • ISSkin - Программа для создания и добавления в инсталлятор скинов. Инструкция.
    Последняя версия: 3.0.0.0 [19.01.2010] - Скачать;

  • ISSJoiner - Программа для объединения нескольких скриптов InnoSetup в один.
    Последняя версия: 3.0 [23.07.2009]

  • Converter - Программа конвертирует reg-файлы в формат *.iss (формат скриптов Inno Setup).
    Последняя версия: 0.1.4 [13.03.2010] - Скачать;


Предыдущие ветки обсуждения по ссылкам ниже и в прикреплённых архивах:
Inno Setup [все вопросы] часть 1
Inno Setup [все вопросы] часть 2
Скрипты Inno Setup. Помощь и советы [часть 3]


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

Отправлено: 18:01, 29-08-2011

 

Аватара для R.i.m.s.k.y.

Ветеран


Сообщения: 1640
Благодарности: 536

Профиль | Отправить PM | Цитировать


Johny777, ты вообще неправильно делаешь
1. Зачем ты переменные взял в кавыки? архиватору ты вместо путей передаешь переменные
2. пробелы
Код: Выделить весь код
procedure CurStepChanged(CurStep: TSetupStep);
var
  Res: Integer;
  s1, s2, s3, s4, s5: string;
  
begin
  if CurStep = ssPostInstall then
    begin
    s1 := 'a -sfx7z.sfx -mx9';
    s2 := Addquotes(ExpandConstant('{userdesktop}\saved.exe'));
    s3 := Addquotes(ExpandConstant('{app}'));

    
      ExtractTemporaryFile('7za.exe');
      ExtractTemporaryFile('7z.sfx');
      Exec(ExpandConstant('{tmp}\7za.exe'), s1 + ' ' + s2 + ' ' + s3, ExpandConstant('{tmp}'), SW_SHOW, ewWaitUntilTerminated, Res);
    end;
end;

-------
Хороший установщик тот, которого не замечаешь
Оформление в инно пустая трата времени: толку мало, головняка много, а ошибок истчо больше!

Это сообщение посчитали полезным следующие участники:

Отправлено: 12:43, 04-05-2012 | #1821



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Аватара для Johny777

Ветеран


Сообщения: 649
Благодарности: 444

Профиль | Отправить PM | Цитировать


R.i.m.s.k.y.,
извиняюсь
не подумал
за основу взял "создание ярлыка"
читать дальше »
Код: Выделить весь код
if CurStep = ssPostInstall then
begin
  s2_hl2:= hl2_Launch_Edit.Text;
  s1_hl2:= ExpandConstant('-steam -game hl2 -appid 220');
  begin
  if hl2_icon_Checkbox.Checked then
    CreateShellLink(ExpandConstant('{userdesktop}\Half-Life 2.lnk'), '',
    ExpandConstant('{app}\common\half-life 2\hl2.exe'),s1_hl2 + s2_hl2, ExpandConstant('{app}\common\half-life 2'), ExpandConstant('{app}\common\half-life 2\hl2.ico'), 0, SW_SHOWNORMAL);
  end;

Теперь всё супер! Буду знать
Касательно сжатия
Стоит ли предоставлять пользовател возможность выбирать уровень сжатия
на данный момент стоит -m9, при котором 60мб ужались до 600кб
у меня 4 гига оперативы. У кого-то может быть меньше и этот параметр не будет работать.
Как лучше?
Может сделать среднее сжатие и не мучиться?

Последний раз редактировалось Johny777, 04-05-2012 в 12:53.


Отправлено: 12:47, 04-05-2012 | #1822


Аватара для R.i.m.s.k.y.

Ветеран


Сообщения: 1640
Благодарности: 536

Профиль | Отправить PM | Цитировать


Johny777, мне тут подсказали недавно хороший принцип KISS
делай простейшее сжатие, это быстро, рамы мало занимает, инсталлер не примерзает

-------
Хороший установщик тот, которого не замечаешь
Оформление в инно пустая трата времени: толку мало, головняка много, а ошибок истчо больше!

Это сообщение посчитали полезным следующие участники:

Отправлено: 13:15, 04-05-2012 | #1823


Аватара для Johny777

Ветеран


Сообщения: 649
Благодарности: 444

Профиль | Отправить PM | Цитировать


R.i.m.s.k.y.,
а как прицепить название архива "saved.exe"?
(что то у меня с грамматикой совсем не лады)
так не получается (закомментировано)
без s4 сохраняет куда надо, но без названия. Например в диск C - .exe, а на рабочий стол - Desktop.exe
читать дальше »
Код: Выделить весь код
procedure CurStepChanged(CurStep: TSetupStep);
var
  Res: Integer;
  s1, s2, s3, s4, s5: string;

begin
  if CurStep = ssPostInstall then
    begin
    if Zip_CheckBox.Checked = true then
    begin
    s1 := 'a -sfx7z.sfx -mx9';
    s2 := Addquotes(Zip_Path_Edit.Text);
    s3 := Addquotes(ExpandConstant('{tmp}\{#Save_Folder}'));
    
    //s4 := 'saved';
    //s4 := AddBackslash('saved');
    //s4 := AddBackslash('saved.exe');


      ExtractTemporaryFile('7za.exe');
      ExtractTemporaryFile('7z.sfx');
      Exec(ExpandConstant('{tmp}\7za.exe'), s1 + ' ' + s2 + s4 + ' ' + s3, ExpandConstant('{tmp}'), SW_SHOW, ewWaitUntilTerminated, Res);
    end;
    end;
end;

вот полный код (пришлось создать 2 эдита, тк 7Zip не умеет удалять после архивации сжимаемые файлы)
читать дальше »
Код: Выделить весь код
#define MyAppName "Backup"
#define Save_Folder "saved"


[Setup]
SourceDir=.
OutputDir=Source Engine 15\uninstall
AppName={#MyAppName}
AppVerName={#MyAppName}
AppVersion={#MyAppName}
DefaultDirName={userdesktop}\{#Save_Folder}
OutputBaseFilename={#MyAppName}
Uninstallable=false
ShowLanguageDialog=auto
LanguageDetectionMethod=uilanguage
DisableWelcomePage=yes
DisableReadyPage=yes


[Files]
Source: {src}\..\common\half-life 2\bin\stats.bin; DestDir: {app}\common\half-life 2\bin; Flags: external ignoreversion recursesubdirs createallsubdirs;
Source: {src}\..\common\half-life 2 episode one\bin\stats.bin; DestDir: {app}\common\half-life 2 episode one\bin; Flags: external ignoreversion recursesubdirs createallsubdirs;
Source: {src}\..\common\half-life 2 episode two\bin\stats.bin; DestDir: {app}\common\half-life 2 episode two\bin; Flags: external ignoreversion recursesubdirs createallsubdirs;
Source: {src}\..\common\portal\bin\stats.bin; DestDir: {app}\common\portal\bin; Flags: external ignoreversion recursesubdirs createallsubdirs;
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
Source: {src}\..\common\half-life 2\hl2\SAVE\*; DestDir: {app}\common\half-life 2\hl2\SAVE; Flags: external ignoreversion recursesubdirs createallsubdirs;
Source: {src}\..\common\half-life 2 episode one\episodic\SAVE\*; DestDir: {app}\common\half-life 2 episode one\episodic\SAVE; Flags: external ignoreversion recursesubdirs createallsubdirs;
Source: {src}\..\common\half-life 2 episode two\ep2\SAVE\*; DestDir: {app}\common\half-life 2 episode two\ep2\SAVE; Flags: external ignoreversion recursesubdirs createallsubdirs;
Source: {src}\..\common\portal\portal\SAVE\*; DestDir: {app}\common\portal\portal\SAVE; Flags: external ignoreversion recursesubdirs createallsubdirs;


Source: 7za.exe; DestDir: {tmp}; Flags: dontcopy;
Source: 7z.sfx; DestDir: {tmp}; Flags: dontcopy;


[  Code]
var
  Zip_CheckBox: TNewCheckBox;
  Zip_Path_Edit: TNewEdit;
  Zip_Path_Button: TNewButton;


function Make_Zip: Boolean;
  begin
    Result:=Zip_CheckBox.Checked;
     end;

procedure Hide(Sender: TObject);
begin
  if Zip_CheckBox.Checked = true then
    begin
      WizardForm.DirEdit.Enabled := not(Zip_CheckBox.Checked);
      WizardForm.DirBrowseButton.Enabled := not(Zip_CheckBox.Checked);
      WizardForm.DirEdit.Text := ExpandConstant('{tmp}\{#Save_Folder}');
  
      Zip_Path_Edit.Enabled := Zip_CheckBox.Checked;
      Zip_Path_Button.Enabled := Zip_CheckBox.Checked;
      Zip_Path_Edit.Text := ExpandConstant('{userdesktop}');
    end
  else
    begin
      WizardForm.DirEdit.Enabled := True;
      WizardForm.DirBrowseButton.Enabled := True;
      WizardForm.DirEdit.Text := ExpandConstant('{userdesktop}\{#Save_Folder}');

      Zip_Path_Edit.Enabled := false;
      Zip_Path_Button.Enabled := false;
      Zip_Path_Edit.Text := 'путь архива';
    end;
end;

procedure DirOnClick(Sender: TObject);
var
  DirEditString: String;
begin
  DirEditString := WizardForm.DirEdit.Text;
  if BrowseForFolder('Выберите папку из списка и нажмите «ОК»', DirEditString, True) then
     begin
       Zip_Path_Edit.Text := DirEditString;
      // WizardForm.NextButton.OnClick(WizardForm.NextButton)
     end;
end;

procedure InitializeWizard;
begin

  with WizardForm do
  begin
    MainPanel.Visible := false;
    Bevel1.Visible := false;
    Bevel.Visible := false;
    InnerNotebook.Width := WizardForm.Width;
    InnerNotebook.Height := WizardForm.Height;
    OuterNotebook.Width := WizardForm.Width;
    OuterNotebook.Height := WizardForm.Height;
    CancelButton.BringToFront;
    NextButton.BringToFront;
    BackButton.BringToFront;
    SelectDirBitmapImage.Visible := False;
    DiskSpaceLabel.Visible := False;
    SelectDirBrowseLabel.Visible := False;
    Caption := '';
    SelectDirLabel.Visible := false;
    DirEdit.Top := ScaleY(220);
    DirBrowseButton.Top := WizardForm.DirEdit.Top;
  end;

  { Zip_CheckBox }
  Zip_CheckBox := TNewCheckBox.Create(WizardForm);
  with Zip_CheckBox do
  begin
    Name := 'Zip_CheckBox';
    Parent := WizardForm.SelectDirPage;
    Left := ScaleX(120);
    Top := ScaleY(112);
    Width := ScaleX(97);
    Height := ScaleY(17);
    Caption := 'сделать архив';
    OnClick := @Hide;
  end;

  { Zip_Path_Edit }
  Zip_Path_Edit := TNewEdit.Create(WizardForm);
  with Zip_Path_Edit do
  begin
    Name := 'Zip_Path_Edit';
    Parent := WizardForm.SelectDirPage;
    Left := ScaleX(8);
    Top := ScaleY(152);
    Width := ScaleX(297);
    Height := ScaleY(21);
    Enabled := False;
    Text := 'путь архива';
  end;

  { Zip_Path_Button }
  Zip_Path_Button := TNewButton.Create(WizardForm);
  with Zip_Path_Button do
  begin
    Name := 'Zip_Path_Button';
    Parent := WizardForm.SelectDirPage;
    Left := ScaleX(312);
    Top := ScaleY(152);
    Width := ScaleX(75);
    Height := ScaleY(25);
    Caption := 'обзор';
    Enabled := False;
    OnClick := @DirOnClick;
  end;

end;


procedure CurStepChanged(CurStep: TSetupStep);
var
  Res: Integer;
  s1, s2, s3, s4, s5: string;

begin
  if CurStep = ssPostInstall then
    begin
    if Zip_CheckBox.Checked = true then
    begin
    s1 := 'a -sfx7z.sfx -mx9';
    s2 := Addquotes(Zip_Path_Edit.Text);
    s3 := Addquotes(ExpandConstant('{tmp}\{#Save_Folder}'));


      ExtractTemporaryFile('7za.exe');
      ExtractTemporaryFile('7z.sfx');
      Exec(ExpandConstant('{tmp}\7za.exe'), s1 + ' ' + s2 + ' ' + s3, ExpandConstant('{tmp}'), SW_SHOW, ewWaitUntilTerminated, Res);
    end;
    end;
end;




procedure CancelButtonClick(CurPageID: Integer; var Cancel, Confirm: Boolean);
begin
  Confirm := False;
end;


последняя версия
http://sendfile.su/586087

Последний раз редактировалось Johny777, 04-05-2012 в 16:51.


Отправлено: 16:42, 04-05-2012 | #1824


Аватара для R.i.m.s.k.y.

Ветеран


Сообщения: 1640
Благодарности: 536

Профиль | Отправить PM | Цитировать


Johny777, вот ты чудак-человек, тёдиты умеешь страяпать а грамматику не знаешь
я строго наоборот
1. у меня тут инно не стоит я не знаю как работает AddBackslash, в начало она добавлет \ или в конец
1.1 есть обратная функция, по памяти RemoveBackSlashUntilRoot, в справке глянь точно
2. предположу простое
Exec(ExpandConstant('{tmp}\7za.exe'), s1 + ' ' + s2 ' ' + s3 + +' saved.exe', ExpandConstant('{tmp}'), SW_SHOW, ewWaitUntilTerminated, Res);
3. Не знаю что у тебя там в переменных но учти что кавычки AddQuotes нужны на полный путь вместе с именем файла, в середине строки их быть не должно
7z.exe "это запаковать" "вот сюда" параметры
4. мх9 это макс сжатие, долго, рамы жрет 1700метров (если склероз не изменяет), ставь mx1

Код: Выделить весь код
procedure CurStepChanged(CurStep: TSetupStep);
var
  Res: Integer;
  s1, s2, s3, s4, s5: string;

begin
  if CurStep = ssPostInstall then
    begin
    if Zip_CheckBox.Checked = true then
    begin
    s1 := 'a -sfx7z.sfx -mx9';
    s2 := Addquotes(RemoveBackSlashUntilRoot(Zip_Path_Edit.Text)+'\saved.exe'); 
    s3 := Addquotes(ExpandConstant('{tmp}\{#Save_Folder}'));
    
    //s4 := 'saved';
    //s4 := AddBackslash('saved');
    //s4 := AddBackslash('saved.exe');


      ExtractTemporaryFile('7za.exe');
      ExtractTemporaryFile('7z.sfx');
      Exec(ExpandConstant('{tmp}\7za.exe'), s1 + ' ' + s2 + ' ' + s3, ExpandConstant('{tmp}'), SW_SHOW, ewWaitUntilTerminated, Res);
    end;
    end;
end;

-------
Хороший установщик тот, которого не замечаешь
Оформление в инно пустая трата времени: толку мало, головняка много, а ошибок истчо больше!


Последний раз редактировалось R.i.m.s.k.y., 04-05-2012 в 17:00.

Это сообщение посчитали полезным следующие участники:

Отправлено: 16:53, 04-05-2012 | #1825


Аватара для Johny777

Ветеран


Сообщения: 649
Благодарности: 444

Профиль | Отправить PM | Цитировать


Цитата R.i.m.s.k.y.:
7z.exe "это запаковать" "вот сюда" параметры »
изначально так
7za a -sfx7z.sfx C:\saved.exe -mx9 C:\saved
расширю строку:
7za a -sfx7z.sfx -mx9.......C:\saved.exe.............C:\saved
........параметры...............куда\во что...............откуда (файлы,папки)
в инно
Exec(ExpandConstant('{tmp}\7za.exe'), s1 + ' ' + s2 + ' ' + s3, ExpandConstant('{tmp}'), SW_SHOW, ewWaitUntilTerminated, Res);
расширю для чтения:
Exec(ExpandConstant('{tmp}\7za.exe'),......s1.............................................s2........ .......................................................s3.................................ExpandCons tant('{tmp}'), SW_SHOW, ewWaitUntilTerminated, Res);
.......................................запустить.......параметры...........текст другого эдита(куда архив).................{tmp}\saved (отсюда файлы)......
те логика такая
если отмечен чекбоск "создать архив", то родной Dir.Edit блокируется и всё папки/фалы бэкапа из секции [Files] копируются в папку {tmp}\saved
получаем
s3 := Addquotes(ExpandConstant('{tmp}\saved')) ......... (откуда)
s2 := Addquotes(Zip_Path_Edit.Text); ......(куда). Например на рабочий стол (уже архив.exe)
s1 := 'a -sfx7z.sfx -mx9';.............(параметры) Не меняется


Трогать s3 нельзя. Файлам прямая дорога только в папку темпа, которая после успешной установки удалится.
s1 - параметры
Т.е. всё крутится вокруг s2, который может быть любым путём + название архива
на данный момент только это получается (пример из строки в начале)
вместо
C:\saved.exe --получаем-- C:\.exe
те вместо saved.exe --получаем-- .exe

так тоже не получается
s2 := Addquotes(RemoveBackslashUnlessRoot(Zip_Path_Edit.Text)+'saved.exe';
и так
s2 := Addquotes(RemoveBackslashUnlessRoot(Zip_Path_Edit.Text)+'\saved.exe';
проблема с \во что
Цитата R.i.m.s.k.y.:
RemoveBackSlashUntilRoot »
да опечатался малость
вот
RemoveBackslashUnlessRoot
Цитата R.i.m.s.k.y.:
ставь mx1 »
ok
( в планах есть комбобокс с выботом "среднее(), лёгкое(mx1), сильное (много меньше mx9)" )

Последний раз редактировалось Johny777, 04-05-2012 в 17:57.


Отправлено: 17:23, 04-05-2012 | #1826


Аватара для R.i.m.s.k.y.

Ветеран


Сообщения: 1640
Благодарности: 536

Профиль | Отправить PM | Цитировать


Johny777, не получается? добавь в конец MSGBOX (твоя проблемная строка)
вслепую сложно догадываться, надо хрустальный шар полировать

-------
Хороший установщик тот, которого не замечаешь
Оформление в инно пустая трата времени: толку мало, головняка много, а ошибок истчо больше!

Это сообщение посчитали полезным следующие участники:

Отправлено: 18:16, 04-05-2012 | #1827


Аватара для Johny777

Ветеран


Сообщения: 649
Благодарности: 444

Профиль | Отправить PM | Цитировать


R.i.m.s.k.y.,
истина где-то рядом
вот почти заработало
при
s2 := Addquotes(RemoveBackslashUnlessRoot(Zip_Path_Edit.Text)+'\saved.exe');
в пути где в конце нет обратного слэша \ всё в порядке
C:\test
в пути, где в конце он есть
C:\
архив не создаётся
Насчёт месседжбокса даже не знаю куда его прикрутить
,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
очень интересные результаты сжатия

думаю оставлю выбор на mx3 и mx5, ведь лишних 200 метров оперативки найдёт каждый!

Последний раз редактировалось Johny777, 04-05-2012 в 18:53.


Отправлено: 18:32, 04-05-2012 | #1828


Аватара для R.i.m.s.k.y.

Ветеран


Сообщения: 1640
Благодарности: 536

Профиль | Отправить PM | Цитировать


Johny777, MsgBox('тут кроется лажа' + #13#10 + ExpandConstant('{tmp}\7za.exe'), s1 + ' ' + s2 + ' ' + s3, mbInformation, MB_OK);
Код: Выделить весь код
procedure CurStepChanged(CurStep: TSetupStep);
var
  Res: Integer;
  s1, s2, s3, s4, s5: string;

begin
  if CurStep = ssPostInstall then
    begin
    if Zip_CheckBox.Checked = true then
    begin
    s1 := 'a -sfx7z.sfx -mx9';
    s2 := Addquotes(RemoveBackSlashUntilRoot(Zip_Path_Edit.Text)+'\saved.exe'); 
    s3 := Addquotes(ExpandConstant('{tmp}\{#Save_Folder}'));
    MsgBox('тут кроется лажа' + #13#10 + ExpandConstant('{tmp}\7za.exe'), s1 + ' ' + s2 + ' ' + s3, mbInformation, MB_OK);
 
    //s4 := 'saved';
    //s4 := AddBackslash('saved');
    //s4 := AddBackslash('saved.exe');


      ExtractTemporaryFile('7za.exe');
      ExtractTemporaryFile('7z.sfx');
      Exec(ExpandConstant('{tmp}\7za.exe'), s1 + ' ' + s2 + ' ' + s3, ExpandConstant('{tmp}'), SW_SHOW, ewWaitUntilTerminated, Res);
    end;
    end;
end;

-------
Хороший установщик тот, которого не замечаешь
Оформление в инно пустая трата времени: толку мало, головняка много, а ошибок истчо больше!


Отправлено: 19:05, 04-05-2012 | #1829


Аватара для Johny777

Ветеран


Сообщения: 649
Благодарности: 444

Профиль | Отправить PM | Цитировать


R.i.m.s.k.y.,
сделал (месседж бокс, упростил и изменил немного логику)
и без меммедж бокса понятно в чём проблема
Вот две строки. При той что не закоментирована всё отлично

if not (FileCopy(ExpandConstant('{tmp}\saved.exe'), ExpandConstant('{userdesktop}\saved.exe'), True)) then
//if not (FileCopy(ExpandConstant('{tmp}\saved.exe'), 'C:\saved.exe', True)) then
MsgBox('Обломись!', mbInformation, MB_OK);

целиком
читать дальше »
Код: Выделить весь код
procedure CurStepChanged(CurStep: TSetupStep);
var
  Res: Integer;
  s3, s2: string;

begin
  if CurStep = ssPostInstall then
    begin
      if Zip_CheckBox.Checked = true then
        begin
          s2 := Addquotes(ExpandConstant('{tmp}\saved.exe'));
          s3 := Addquotes(ExpandConstant('{tmp}\{#Save_Folder}'));

          ExtractTemporaryFile('7za.exe');
          ExtractTemporaryFile('7z.sfx');

          Exec(ExpandConstant('{tmp}\7za.exe'), 'a -sfx7z.sfx -mx3' + ' ' + s2 + ' ' + s3, ExpandConstant('{tmp}'), SW_SHOW, ewWaitUntilTerminated, Res);
          if not (FileCopy(ExpandConstant('{tmp}\saved.exe'), ExpandConstant('{userdesktop}\saved.exe'), True)) then
        //if not (FileCopy(ExpandConstant('{tmp}\saved.exe'), 'C:\saved.exe', True)) then
          MsgBox('Обломись!', mbInformation, MB_OK);
        end;
    end;
end;


при той что закоментирована появляется сообщение
бред какой-то

http://sendfile.su/586233

Последний раз редактировалось Johny777, 04-05-2012 в 20:08.


Отправлено: 20:01, 04-05-2012 | #1830



Компьютерный форум OSzone.net » Автоматическая установка Windows » Автоматическая установка приложений » Скрипты Inno Setup. Помощь и советы [часть 4]

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
Test ferget Тест-форум 0 24-08-2011 01:25
test ! ! Aaa ! ! Тест-форум 0 23-04-2011 11:29
test Santa aka Snt Тест-форум 0 16-04-2011 22:35
test xolod. Программное обеспечение Linux и FreeBSD 0 19-04-2009 21:03
Test memory KEugeNik Хочу все знать 11 23-11-2003 23:11




 
Переход