Вопрос Как добавить описание под картинку через botva2? [Или: вывод изображения и описания через botva2]

audiofeel

Старожил
Ещё иногда смотрю в сторону FMXInno, но там сдерживающим фактором является то, что его используют для репаков. Я этим не промышляю, так что насколько целесообразно использовать комплекс FMXInno для русификации игр?
А. - Установка небольших модов на игру. Как то делал давно, но не договорились. Качает архив с GitHub, распаковывает его и заменяет
файлы.
60.png
===
Б. - Русификатор Присутствует страница проверки HASH:. Проверка по желанию HASH архивов перед распаковкой и распакованных файлов после установки (В случае успешной распаковки). Проверка пути игры, Steam версии через реестр и обычной по наличию файлов в папке. (В пустую папку установить у пользователя не получится). Удаление русификатора перед повторной установкой (И возвращение бекапа на "место" (при его наличии). При наличии незатертого ключа в реестре и файла unins000.exe). Возможность создать по желанию бекап заменяемых файлов:. Создание бекапа заменяемых файлов перед установкой, путем перемещения (Очень быстро). Возврат заменяемых файлов в случае неудачной распаковки или ее отмены, путем копирования (Долго, примерно минута. Зависит от ПК).
 

Вложения

  • 4.9 MB Просмотры: 26

tihiy_don

Старожил
Ещё иногда смотрю в сторону FMXInno, но там сдерживающим фактором является то, что его используют для репаков. Я этим не промышляю, так что насколько целесообразно использовать комплекс FMXInno для русификации игр?
Очень целесообразно!
 

Shegorat

Lord of Madness
Администратор
Очень целесообразно!
Нууу не знаю. Для чего русификатору который состоит из дельта-патчей, и весит 2 мб вместе с xdelta, нужен инсталлятор на 10 мб? Я всегда считал что инсталляторы модов или русификаторов должны быть практичными. Это не репаки, они не ставятся по 2-3 часа, чтобы залипать на красивый инсталлятор. ИМХО, протота и функционал - вот главные качества для них
 

tihiy_don

Старожил
@Shegorat, аудиофил выше писал, что мы делали русификатор для резика 4 и всё норм. А насчёт размера париться в 2023 году, ну по моему мнению такое себе.
 

audiofeel

Старожил
Нууу не знаю. Для чего русификатору который состоит из дельта-патчей, и весит 2 мб вместе с xdelta, нужен инсталлятор на 10 мб? Я всегда считал что инсталляторы модов или русификаторов должны быть практичными. Это не репаки, они не ставятся по 2-3 часа, чтобы залипать на красивый инсталлятор. ИМХО, протота и функционал - вот главные качества для них
сейчас у человека есть выбор. И это не плохо. :pardon:
95.jpg
 

Shegorat

Lord of Madness
Администратор
@Shegorat, аудиофил выше писал, что мы делали русификатор для резика 4 и всё норм. А насчёт размера париться в 2023 году, ну по моему мнению такое себе.
Не в обиду будет сказано, но вот поэтому сейчас и весь софт такой - ибо зачем париться, люди просто купят себе железки помощнее. Печальная тенденция..

сейчас у человека есть выбор. И это не плохо. :pardon:
Я не говорю что это плохо. Просто мне кажется функционал FMXInno избыточен для этого. Можно и дошик разогревать техническим лазером на 20 КВт, вроде и прикольно, и даже работает, а вроде и нафига?
 

audiofeel

Старожил
Печальная тенденция..
Ну грустно это все. Мы уже материнку подбираем по цвету радиатора на доп. питании и его форме.
Просто мне кажется функционал FMXInno избыточен для этого
Для данной темы точно. Все это возможно может быть сделано вообще без навесного оборудования.
 

tihiy_don

Старожил
Не в обиду будет сказано, но вот поэтому сейчас и весь софт такой - ибо зачем париться, люди просто купят себе железки помощнее. Печальная тенденция..
Тут с Вами согласен. Всё же, может автор будет что-то большее и посмотрит в сторону FMXInno.
 

Andreo Fadio

Старожил
Это не репаки, они не ставятся по 2-3 часа, чтобы залипать на красивый инсталлятор.
Да и в репаках пользователи выберут что попроще, все эти графические рюшки - красиво, но не особо конечному пользователю интересно.
 

Cyberworm

Новичок
А. - Установка небольших модов на игру. Как то делал давно, но не договорились. Качает архив с GitHub, распаковывает его и заменяет
файлы.
Посмотреть вложение 8122
===
Б. - Русификатор Присутствует страница проверки HASH:. Проверка по желанию HASH архивов перед распаковкой и распакованных файлов после установки (В случае успешной распаковки). Проверка пути игры, Steam версии через реестр и обычной по наличию файлов в папке. (В пустую папку установить у пользователя не получится). Удаление русификатора перед повторной установкой (И возвращение бекапа на "место" (при его наличии). При наличии незатертого ключа в реестре и файла unins000.exe). Возможность создать по желанию бекап заменяемых файлов:. Создание бекапа заменяемых файлов перед установкой, путем перемещения (Очень быстро). Возврат заменяемых файлов в случае неудачной распаковки или ее отмены, путем копирования (Долго, примерно минута. Зависит от ПК).
Пример.jpg
У вас данной формы со связкой CompDescPanel := TPanel.Create(WizardForm) + CompDescText := TLabel.Create(WizardForm) случайно нет? По умолчанию явно не доработанный GUI, потому что изображение в соотношении 16:9 смотрится очень дико на панельке 4:3, где имеется пустая (безхoзная зона). Хотелось бы глянуть исходник, конечно, если он имеется в наличии.
 

audiofeel

Старожил
@Cyberworm, Да это так, проба, картинки... ну какие были (кому и кобыла невеста)
для именно этой игры, такой установщик слишком "громоздкий". зуб даю, все они на семерке тире десятке сидят
 

audiofeel

Старожил
Примерно так дальше идет качалка и распаковка

code_language.pascal:
    if Page3RadioBtn[1].ISChecked then
    begin
      s:= AddBackslash(ExpandConstant('{tmp}\{#Data1Folder}'));
      ForceDirectories(s);
      DownloadCancel:= False;
      surl:= 'https://raw.githubusercontent.com/???????????/ModPack7zArchive/{#Data1File}';
      soutput:= s + '{#Data1File}';
      shash:= '837d43e6c95844347310f055122669a1ffa53d78eb136220920a0b11ac7d54f1';
      pDownloadFile(surl, soutput, shash , @FMXInnoDownloadCallback);
      Page4Lbl[3].Text('Распаковка файлов...');
            Exec(ExpandConstant('{tmp}\7z.exe'), ExpandConstant('x "{tmp}\{#data1Unpack}" -p{#DiskPassword} -o"{app}\Data\" * -r -aoa'), '', SW_HIDE, ewWaitUntilTerminated, ResultCode);
    end;
 

audiofeel

Старожил
поиск папки с игрой

code_language.pascal:
    TObject(Page2RadioBtn[1].GetObject):
    begin
      if IsWin64 then                         
        Test:= 'HKLM64'
      else
        Test:= 'HKLM32';
      ADir:= ExpandConstant('{reg:' + Test + '\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\Steam App 444200, InstallLocation|Клиент Steam не обнаружен!}');
      Page2Lbl[3].Text(MinimizePathName(ADir, WizardForm.DirEdit.Font, WizardForm.DirEdit.Width));
      WizardForm.DirEdit.Text:= ADir;
      Page2Lbl[3].Enabled(False);
      BrowseBtn.Enabled(False);
    end;

    TObject(Page2RadioBtn[2].GetObject):
    begin
      ADir:= ExpandConstant('{reg:HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\LGC-WOTB.RU.PRODUCTION\, InstallLocation|Клиент LGC не обнаружен!}');
      Page2Lbl[3].Text(MinimizePathName(ADir, WizardForm.DirEdit.Font, WizardForm.DirEdit.Width));
      WizardForm.DirEdit.Text:= ADir;
      Page2Lbl[3].Enabled(False);
      BrowseBtn.Enabled(False);
    end;

    TObject(Page2RadioBtn[3].GetObject):
    begin
      ADir:= ExpandConstant('{#SetupSetting("DefaultDirName")}');
      Page2Lbl[3].Text(MinimizePathName(ADir, WizardForm.DirEdit.Font, WizardForm.DirEdit.Width));
      WizardForm.DirEdit.Text:= ADir;
      Page2Lbl[3].Enabled(True);
      BrowseBtn.Enabled(True);
    end;
 
Сверху