Если эта программа для вас слишком продвинута/сложна, посмотрите кнопку "Простая установка" на информационной странице (где информация об изменениях). После его использования (в полной версии) он удалит все установленные среды выполнения VC++ и установит включенные в программу.
Так сложно одновременно создать максимально простую и максимально продвинутую программу, в которой можно изменить все доступные параметры, даже из командной строки! Итак, я создал пакетный файл, чтобы показать вам, как программа анализирует командную строку. И все доступные параметры я описал в текстовых файлах. Я добавил кнопку «Простая установка», благодаря которой вам не нужно перебирать все возможные варианты.
Но имейте в виду, что опция автоматического обновления не удалит все двойные записи (в разделе удаления) - для этого предназначена обычная установка. Кнопка «Простая установка» также очистит все дублированные записи. Или вы можете вручную удалить двойные записи, видимые в разделе удаления.
Трудно конкурировать с программами, доступными «бесплатно», но обычно у них меньше возможностей, они не поддерживают большинство используемых ОС. Единственное, что хорошо, так это то, что они "доступны бесплатно" - вот и всё. Сравните мою программу (репак) с любыми другими репаками VC++ и попытайтесь найти аналогичные варианты, доступные в других репаках VC++.
v22.05.10 (10.05.2022):
Оттуда добавлены «InnoSetup [Типы], [Компоненты], [Задачи], [Запуск] непосредственно в [коде]»: https://github.com/Wilenty/InnoSetup-Types-Components-Tasks-Run-Directly -В коде-
И изменил «Окно выбора VC++» на «Страницу выбора VC++» после информационного текста.
Добавлена поддержка архитектуры ARM64. Теперь он включает VC++ 2017, 2019 и 2022 для ARM64 (и поддерживает 2017/2019/2022 во внешней версии, параметр: /VC_redistARM64="X:FullPath (с пробелами)totheVC_redist.arm64. Exe")
Добавлен параметр командной строки выборочного удаления: /Uninstall="список имен, версий или ключей удаления, разделенных запятыми" после выбора удаления в: /COMPONENTS="unarm64,unx64,unx86" Параметры для команды- строки /Uninstall="12.v3r...,{AndOr-Reg-Keys...},и/или имена VC или часть имен..." должны быть разделены запятой, как и остальные списки параметров для InnoSetup. При использовании этого параметра выбор всех компонентов в списке удаления будет отменен, и будут выбраны только те, которые соответствуют компонентам из списка удаления.
Добавлен параметр командной строки установки с отсутствующей dll: /NeedDLL="Missing.dll". Он действует так же, как «Меню» (кнопка) -> «Нужна dll?» на странице компонентов, но из командной строки. Вышеупомянутый параметр может работать отдельно или вместе с параметром "/COMPONENTS=". При использовании только одного из вышеупомянутых параметров командной строки (например, «/NeedDLL=") установщик переключится на «CustomSetup», и выбор всех компонентов будет отменен — он выберет только те компоненты, которые сможет найти. используя данный файл dll. Но при использовании "/COMPONENTS=" он добавит компоненты, найденные с помощью параметра командной строки "/NeedDLL=", в список установки.
Добавлена "темная тема" - зависит от используемой вами темы (W10/W11), если она включена - инвертирует цвета, иначе использует цвета ваших окон.
Убрано создание раздела удаления в реестре ОС и удален параметр командной строки /Portable.
Добавлен «PreveiewOnTaskBarAW.isi», чтобы показать вам, что мое решение работает без каких-либо проблем, поэтому теперь вы можете видеть предварительный просмотр окна/сообщений установщика на панели задач.
Обновлен VC++ 2022 до последней версии.
Параметр командной строки /Portable пропускает проверку первого полного удаления и пропускает создание записи об удалении в реестре ОС. Помните, что опция автоматического обновления удаляет не все старые установленные среды выполнения, а только последнюю. Итак, чтобы удалить все дублированные записи в разделе «Удалить», вам необходимо удалить их все и установить заново.
С этого момента вы можете использовать его как стандартный установщик InnoSetup со стандартными параметрами InnoSetup (/TYPE=имя типа и /COMPONENTS="список имен компонентов, разделенных запятыми"), или вы можете использовать предопределенные параметры, которые можно найти в: "Меню » (кнопка на странице «Компоненты») -> «Параметры?» (и нажмите на эту кнопку еще несколько раз).
Программа установки возвращает количество операций, выполненных в процессе удаления/установки, в виде кода возврата/кода выхода. Но поскольку внутренние коды ошибок InnoSetup больше нуля (и я не могу изменить их без перекомпиляции исходного кода), он возвращает количество выполненных операций ниже нуля. Например, код выхода 0 в обновлении (автоматическое обновление) означает, что ничего обновлять не нужно, все библиотеки времени выполнения находятся в текущих версиях. А код выхода -1 означает, что в процессе удаления и/или установки была выполнена одна операция (зависит от вашего выбора) и так далее...
Если у вашего компьютера мало ресурсов или слабая видеокарта, или вас не интересуют сообщения журнала MSI. Вы можете добавить параметр командной строки /Silent, который сообщает установщику InnoSetup не отображать сообщения журнала «Microsoft Software Installer» (MSI) на странице установки, что должно (немного) ускорить время установки.
Я полностью пересобрал весь установщик и добавил среду выполнения VC++ 2022.
Если вы выберете для установки версию VC++ 2022 или используете параметр командной строки /SelectVcVersion="2022" и укажете компоненты для установки в /COMPONENTS="x642015additional,x862017minimum" (например, ), установщик заменит «2015» и «2017» для выбранной версии VC++, т. е. «2022», и будет выберите правильные компоненты для установки. То же самое, если вы выберете для установки другую версию VC++ и выберете для установки другие компоненты, отличные от выбранного VC++, в группе 2015, 2017, 2019 и 2022.