Jump to content
Korean Random
EvilAlex

Создание инсталляторов для модпаков на базе Inno Setup

Recommended Posts

if DirExists ('{app}\res_mods_old') = True then

Это неправильная конструкция..

Попробуй так:

if DirExists('{app}\res_mods_old') then
begin
Действие, если папка присутствует
end
else
Действие во всех остальных случаях
end;
Edited by Kotyarko_O

Share this post


Link to post

Short link
Share on other sites

 

Это неправильная конструкция..

Попробуй так:

if DirExists('{app}\res_mods_old') then
begin
Действие, если папка присутствует
end
else
Действие во всех остальных случаях
end;

Пробовал такое - не захотело работать, это раз. Во вторых: так толком и не придумал, что делать, если папки этой нет. Надо просто пропустить действие удаления. Как?

Share this post


Link to post

Short link
Share on other sites

@ventura69, скинь весь свой код бекапа.. поиграюсь, есть пара идей..

Да пожалуйста :-)

claerkash.rar

Здесь пока не все - кое какие идеи еще не дописал. Но, по мелочи. Кстати, надо вписать еще удаление файлов обновлений в очистку кэш.

Share this post


Link to post

Short link
Share on other sites

@ventura69, вот, получился нормальный вариант.. Если он в выбранной директории находит папку res_mods_old, то выполняется действие:

  DelTree(ExpandConstant('{app}\res_mods'), True, True, True);
  RenameFile(ExpandConstant('{app}\res_mods_old'), ExpandConstant('{app}\res_mods'));

Если же он эту папку не находит, то выводится мсджбокс и после нажатия кнопки ОК инсталл закрывается.

 

Это всё выполнятся при условии, что был выбран пункт "Восстановить резервную копию файлов".

 

'то, что я редактировал в коде'

function BackupCheck_5(): Boolean;
begin
  If LoadRadioButton.Checked then
  begin
  if DirExists(ExpandConstant('{app}\res_mods_old'))=True then
  begin
  DelTree(ExpandConstant('{app}\res_mods'), True, True, True);
  RenameFile(ExpandConstant('{app}\res_mods_old'), ExpandConstant('{app}\res_mods'));
   end
  else
   begin
    MsgBox('Нет доступных бекап-версий!', mbError, mb_Ok);
   Abort;
  end;
 end;
end;


 

Кстати, надо вписать еще удаление файлов обновлений

хм.. может и мне стоит.. хорошая идея, подумаю :)

Edited by Kotyarko_O

Share this post


Link to post

Short link
Share on other sites

 

 

подскажите, где линкольна найти можно?
Знать бы, кто это :)

Share this post


Link to post

Short link
Share on other sites

Знать бы, кто это :)

16-й президент США (1861—1865), освободитель американских рабов   :gg:

Share this post


Link to post

Short link
Share on other sites

Ну блин, я серьёзно, может кто в курсе как найти чела с ником Линкольн (на инглише написан, не помню как правильно).

Share this post


Link to post

Short link
Share on other sites

Ну блин, я серьёзно, может кто в курсе как найти чела с ником Линкольн (на инглише написан, не помню как правильно).

 Тут, на форуме (тем более, в этой теме), не пересекался с таким.

А зачем он тебе? - Может, кто другой помочь сможет?

Edited by Kotyarko_O

Share this post


Link to post

Short link
Share on other sites
хм.. может и мне стоит.. хорошая идея, подумаю :)

За код спасибо. Поковыряю. Я пробовал сварганить такое, но, видимо, запутался в лексике.

Идея не просто хорошая, а очень хорошая! :-) У себя, на свежем ноуте (2 месяца ему) очистил 12 Гб ненужного хлама обновлений от кВГ. В папке апдейт.

Да! И самое главное: свою почту скиньте мне в личку. Перешлю письмо с комментариями и картинками, как воспользоваться нашим файлообменником. :-)

Edited by ventura69

Share this post


Link to post

Short link
Share on other sites

Когда же вы поймёте, что после каждого патча нужно выкачивать новый клиент? Вот так и рождается вайн о плохой работе клиента.

Share this post


Link to post

Short link
Share on other sites

Когда же вы поймёте, что после каждого патча нужно выкачивать новый клиент? Вот так и рождается вайн о плохой работе клиента.

Темны и непонятны Ваши речи, уважаемый...

Я существо старое, дремучее (45 лет мне) и далекое от сленга, потому не соизволите изъясниться понятнее? "Выкачивать", "вайн"... По отдельности все буковки понятны, а суть фразы ускользнула от меня, Можно попросить попонятнее для новичка объяснить?

Клиент я скачал еще при версии 0.9.0, обновил один раз до 0.9.1. Папка апдейта у меня была 12 Гб. 

Share this post


Link to post

Short link
Share on other sites

ventura69, никаких обновлений через лоунчер, только новый клиент каждый патч.

Share this post


Link to post

Short link
Share on other sites

Kotyarko_O, спасибо за код! Все гуд. Немного для себя подправил (отключил вывод ошибки). Теперь можно и дальше думать: как при бэкапе перескочить через окно с установкой модов. А то любителей с шаловливыми ручками хватает :-)

Share this post


Link to post

Short link
Share on other sites

 

 

Теперь можно и дальше думать: как при бэкапе перескочить через окно с установкой модов.
Играйся с функцией:
function ShouldSkipPage(PageID: Integer): Boolean;

Share this post


Link to post

Short link
Share on other sites

Играйся с функцией:

function ShouldSkipPage(PageID: Integer): Boolean;

Хм... А почему? Я склонялся к 

function NextButtonClick(CurPageID: Integer): Boolean;

Если отмечен чекбокс на восстановление сборки, то имитируем нажатие кнопки Некст и перескакиваем в конец инсталлятора.

Share this post


Link to post

Short link
Share on other sites

 

 

имитируем нажатие кнопки Некст
Если сборка была ранее установлена - то выбранные при той установке пункты выберутся и сейчас (хотя как будет с ShouldSkipPage я точно не знаю, возможно, так же).

Share this post


Link to post

Short link
Share on other sites

 Тут, на форуме (тем более, в этой теме), не пересекался с таким.

А зачем он тебе? - Может, кто другой помочь сможет?

курсорами я видел он занимался раньше, а я сменить в игре хочу, надоел мне он.

Share this post


Link to post

Short link
Share on other sites

Уважаемые, не риторический вопрос: как изменить текст в ReadyLabel на странице ReadyPage? Он даже на вкладке редактора форм затонирован и не подлежит изменению...

Share this post


Link to post

Short link
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.


  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...