tis-vcredist2015-2022 icon

Microsoft Visual C++ 2015-2022 Redistributable

Paquet d’installation silencieuse pour Microsoft Visual C++ 2015-2022 Redistributable

14.44.35112.1-27

  • package: tis-vcredist2015-2022
  • name: Microsoft Visual C++ 2015-2022 Redistributable
  • version: 14.44.35112.1-27
  • categories: Development,System and network
  • maintainer: WAPT Team,Tranquil IT,Jimmy PELÉ
  • editor: Microsoft
  • licence: Freeware
  • locale: all
  • target_os: windows
  • architecture: all
  • signature_date:
  • size: 39.08 Mo
  • homepage : https://www.microsoft.com/

package           : tis-vcredist2015-2022
version           : 14.44.35112.1-27
architecture      : all
section           : base
priority          : optional
name              : Microsoft Visual C++ 2015-2022 Redistributable
categories        : Development,System and network
maintainer        : WAPT Team,Tranquil IT,Jimmy PELÉ
description       : The Visual C++ Redistributable Packages install run-time components that are required to run C++ applications built using Visual Studio
depends           : 
conflicts         : 
maturity          : PROD
locale            : all
target_os         : windows
min_wapt_version  : 2.0
sources           : https://support.microsoft.com/help/2977003/the-latest-supported-visual-c-downloads
installed_size    : 
impacted_process  : 
description_fr    : Les packages Redistribuable Visual C++ installent les composants d'exécution nécessaires pour exécuter les applications C++ créées à l'aide de Visual Studio
description_pl    : Visual C++ Redistributable Packages instaluje komponenty run-time, które są wymagane do uruchomienia aplikacji C++ zbudowanych przy użyciu Visual Studio
description_de    : Die Visual C++ Redistributable Packages installieren Laufzeitkomponenten, die für die Ausführung von C++-Anwendungen erforderlich sind, die mit Visual Studio
description_es    : Los paquetes redistribuibles de Visual C++ instalan componentes de tiempo de ejecución necesarios para ejecutar aplicaciones C++ creadas con Visual Studio
description_pt    : Os Pacotes Redistribuíveis Visual C++ instalam componentes de tempo de execução que são necessários para executar aplicações C++ construídas usando o Visual Studio
description_it    : I pacchetti ridistribuibili di Visual C++ installano i componenti di run-time necessari per l'esecuzione di applicazioni C++ realizzate con Visual Studio
description_nl    : De Visual C++ Redistributable Packages installeren runtime componenten die nodig zijn om C++ applicaties te draaien die gebouwd zijn met Visual Studio
description_ru    : Visual C++ Redistributable Packages устанавливает компоненты времени выполнения, необходимые для запуска приложений C++, созданных с помощью Visual Studio
audit_schedule    : 
editor            : Microsoft
keywords          : microsoft,visual,c++,2015,2017,2019,2022,redist,vc,redistributable
licence           : Freeware
homepage          : https://www.microsoft.com/
package_uuid      : 0f78edcf-d7f0-4486-a63e-5085bf7f2295
valid_from        : 
valid_until       : 
forced_install_on : 
changelog         : 
min_os_version    : 6.0
max_os_version    : 
icon_sha256sum    : 057c35554d9d1cc9cc72c539d46ad6f712893330a3ce22ff7676e84fcbb34fba
signer            : Tranquil IT
signer_fingerprint: 8c5127a75392be9cc9afd0dbae1222a673072c308c14d88ab246e23832e8c6bb
signature_date    : 2025-05-18T20:32:21.000000
signed_attributes : package,version,architecture,section,priority,name,categories,maintainer,description,depends,conflicts,maturity,locale,target_os,min_wapt_version,sources,installed_size,impacted_process,description_fr,description_pl,description_de,description_es,description_pt,description_it,description_nl,description_ru,audit_schedule,editor,keywords,licence,homepage,package_uuid,valid_from,valid_until,forced_install_on,changelog,min_os_version,max_os_version,icon_sha256sum,signer,signer_fingerprint,signature_date,signed_attributes
signature         : psFTAxntHkgS2eE8E6pzAwWmBXTZXEt4towbwLXSSHPOOgUvxfZZgzC1iZl1cqHbBuFrVunVCFu60RL0gHGK4efPBMX2cOLCnHJhPOjZoT/NWSdbO1L5zRH0cfZnygIL5yliGbasWWiNy4W6jpwym6ovscdEzj+YqJvdv/vBH3LsoGaeArtjnCc757z27wCVkODEu5OaVfczH89SC6cC0O8+T5e/91mj1z+LrSPOlwHtXa4Yp0Dwo+zwHF6Nc8C9xtshClqzfxnTPv6dvuggDLaEok0Yiqlhel6YPufSTc22AARQMiscDWHqk7mstemB5HO7HJME1dk1Oa8GuQPfQg==

# -*- coding: utf-8 -*-
from setuphelpers import *


# Declaring global variables - Warnings: 1) WAPT context is only available in package functions; 2) Global variables are not persistent between calls
bin_name_x86 = "VC_redist.x86.exe"
bin_name_x64 = "VC_redist.x64.exe"
# bin_name_arm64 = 'VC_redist.arm64.exe'
silent_args = "/quiet /norestart"


def install():
    # Installing the package
    vers = control.version.split("-")[0]

    if force:
        print("Removing the software before installation since the install is forced")
        uninstall()

    if check_if_install_need("x86", vers):
        print("Installing: %s" % bin_name_x86)
        run('"%s" %s' % (bin_name_x86, silent_args))
        if check_if_install_need("x86", vers):
            error("The installation did not go well")

    if iswin64():
        if check_if_install_need("x64", vers):
            print("Installing: %s" % bin_name_x64)
            run('"%s" %s' % (bin_name_x64, silent_args))
            if check_if_install_need("x64", vers):
                error("The installation did not go well")


def uninstall():
    for ukey_x86 in installed_softwares("Microsoft Visual C++ 2015-2022 Redistributable (x86)"):
        print("Removing: %s (%s)" % (ukey_x86["name"], ukey_x86["version"]))
        run(uninstall_cmd(ukey_x86["key"]) + " /norestart")

    if iswin64():
        for ukey_x64 in installed_softwares("Microsoft Visual C++ 2015-2022 Redistributable (x64)"):
            print("Removing: %s (%s)" % (ukey_x64["name"], ukey_x64["version"]))
            run(uninstall_cmd(ukey_x64["key"]) + " /norestart")


def audit():
    vers = control.version.split("-")[0]

    err = False
    if iswin64():
        if check_if_install_need("x64", vers):
            print("Microsoft Visual C++ 2015-2022 Redistributable (x64) with min version %s not found" % vers)
            err = True
    if check_if_install_need("x86", vers):
        print("Microsoft Visual C++ 2015-2022 Redistributable (x86) with min version %s not found" % vers)
        err = True

    if err:
        return "ERROR"

    warn = False

    if iswin64():
        x64vers = installed_softwares("Microsoft Visual C++ 2015-2022 Redistributable (x64) -")[0]["version"]
        if Version(x64vers) > Version(vers):
            print("The version installed on the workstation is more recent (x64) ! %s" % x64vers)
            warn = True

    x86vers = installed_softwares("Microsoft Visual C++ 2015-2022 Redistributable (x86) -")[0]["version"]
    if Version(x86vers) > Version(vers):
        print("The version installed on the workstation is more recent (x86) ! %s " % x86vers)
        warn = True

    if warn:
        return "WARNING"

    return "OK"


def check_if_install_need(arch, vers):
    for soft in installed_softwares("Microsoft Visual C++ 2015-2022 Redistributable (%s) - " % arch):
        if Version(soft["version"], 3) >= Version(vers, 3):
            return False
    return True

# -*- coding: utf-8 -*-
from setuphelpers import *

bin_name_x86 = "VC_redist.x86.exe"
bin_name_x64 = "VC_redist.x64.exe"

url_dl_x86 = "https://aka.ms/vs/17/release/VC_redist.x86.exe"
url_dl_x64 = "https://aka.ms/vs/17/release/VC_redist.x64.exe"
# url_dl_arm64 = 'https://aka.ms/vs/16/release/VC_redist.arm64.exe'


def update_package():
    # Initializing variables
    proxies = get_proxies()
    if not proxies:
        proxies = get_proxies_from_wapt_console()

    # Downloading binaries
    print("Downloading " + bin_name_x64)
    wget(url_dl_x64, bin_name_x64, proxies=proxies)
    print("Downloading " + bin_name_x86)
    wget(url_dl_x86, bin_name_x86, proxies=proxies)

    # Changing version of the package
    version = get_version_from_binary(bin_name_x86)
    control.version = "%s-%s" % (version, int(control.version.split("-")[-1]))
    control.save_control_to_wapt()
    print("Changing package version to: %s in WAPT\\control" % control.version)

463f736d5925566edc0e8f7d8e70c0a1fc95adf44afa5d5390b979f5a35934cc : VC_redist.x64.exe
54ccbbc0663064f0b57442dc986511b90f3cfaab23524087b0711e6fa214cb26 : VC_redist.x86.exe
38d056ab130f7bf7c481c12636a4e9959de36561d3dfcbe54c6e3571bc0c1dc3 : WAPT/certificate.crt
09c3a90a901346b7b69f1ee7f4e87aa94fcc28acc2f891fb233185e9b1d0c569 : WAPT/control
057c35554d9d1cc9cc72c539d46ad6f712893330a3ce22ff7676e84fcbb34fba : WAPT/icon.png
7ef2b14d36f6c239487ac542389f555dca4b3833202d28e724e6a5a31222823a : luti.json
955be85bda204d21aea68769564271a881896a2c0faf701afcab49271762c165 : setup.py
13930a211f4c6189c849c4bb322c340ebec6a1b16f731bef8d03c93cf5f717fb : update_package.py