tis-vcredist2015-2019

14.29.30153.0-27
The Visual C++ Redistributable Packages install run-time components that are required to run C++ applications built using Visual Studio
7855 downloads
Download
See build result See VirusTotal scan
tis-vcredist2015-2019 icon
  • package : tis-vcredist2015-2019
  • name : Microsoft Visual C++ 2015-2019 Redistributable
  • version : 14.29.30153.0-27
  • categories : Development,System and network
  • maintainer : WAPT Team,Tranquil IT,Jimmy PELÉ
  • installed_size :
  • editor : Microsoft
  • licence : Freeware
  • signature_date : 2023-11-20T20:00:15.931449
  • size : 38.58 Mo
  • locale : all
  • target_os : windows
  • impacted_process :
  • architecture : all
  • Homepage : https://www.microsoft.com/
package           : tis-vcredist2015-2019
version           : 14.29.30153.0-27
architecture      : all
section           : base
priority          : optional
name              : Microsoft Visual C++ 2015-2019 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,redist,vc,redistributable
licence           : Freeware
homepage          : https://www.microsoft.com/
package_uuid      : 82c88efc-b355-437c-b4e0-85cf52974a56
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         : ZrwD96t7suwk4JcLSklJsZIEL2JJMxYZdzzv/X425SO1GkJ6snmVhol5pCyJQJCTqKCQ4/OOZb5Z/XIAIZ6Vyw2LkXBV4aUhpepQzMwm4FJ6raDBXsmU4m2djXQfzpdW+WKPgxmNz6yWehv/arnHzHSgfZT/ELF3vP48NxZmjJ/R7rI7qhc9NcaofeXo5HxvxKoOY9XUa6ssF+GB7a60AShB/UzfnQ/jln9ZNA2fQqptRCAVb1uOi1OYEAh5E+DOyCieBeV5NQprzkaSkoaTrejjwJivARjb5s1D5K/G9Lxz7V77cD++VLbx1g7YEXQ6kY3uVDGxaZco/IlEmxhFiQ==
signature_date    : 2023-11-20T20:00:15.931449
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
# -*- coding: utf-8 -*-
from setuphelpers import *
import platform

# 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-2019 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-2019 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-2019 Redistributable (x64) with min version %s not found" % vers)
            err = True
    if check_if_install_need("x86", vers):
        print("Microsoft Visual C++ 2015-2019 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-2019 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-2019 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-2019 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/16/release/VC_redist.x86.exe"
url_dl_x64 = "https://aka.ms/vs/16/release/VC_redist.x64.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)
6076a40ae10612aaa669314f0e2229fb4a055b347692a22ed56109a3755fbee6 : setup.py
 : __pycache__
72e93c162c1aa2011c16363476731f1186f676b766c8059fb87d704a39a37867 : update_package.py
cee28f29f904524b7f645bcec3dfdfe38f8269b001144cd909f5d9232890d33b : VC_redist.x64.exe
057c35554d9d1cc9cc72c539d46ad6f712893330a3ce22ff7676e84fcbb34fba : WAPT/icon.png
a5a97261381e1d0ad46ee15916abec9c2631d0201f5cc50ceb0197a165a0bbbf : WAPT/certificate.crt
b6f0b3095703c4b63cea4eb8a339992a37aeecd1cf0fa91effcebe19557600af : luti.json
29f649c08928b31e6bb11d449626da14b5e99b5303fe2b68afa63732ef29c946 : VC_redist.x86.exe
fadce9c34f3c785efba5e586dee15f76571b7ee5ce558ca2651da6e23eb11111 : WAPT/control