tis-vcredist2015-2022 icon

Microsoft Visual C++ 2015-2022 Redistributable

Silent install package for Microsoft Visual C++ 2015-2022 Redistributable

14.51.36231.0-31
Development
System and network
Development
System and network

Preprod packages are packages built on LUTI. They remain in PREPROD usually for 5 days, after which a second VirusTotal scan is performed to verify that the status has not changed.
If the package passes this last check, it is promoted to PROD and published on the store.

  • package: tis-vcredist2015-2022
  • name: Microsoft Visual C++ 2015-2022 Redistributable
  • version: 14.51.36231.0-31
  • 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: 37.65 Mo
  • homepage : https://www.microsoft.com/

package           : tis-vcredist2015-2022
version           : 14.51.36231.0-31
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          : PREPROD
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      : 782969e5-802f-419e-8ede-76b1bfe40a41
valid_from        : 
valid_until       : 
forced_install_on : 
changelog         : 
min_os_version    : 10
max_os_version    : 
icon_sha256sum    : 057c35554d9d1cc9cc72c539d46ad6f712893330a3ce22ff7676e84fcbb34fba
signer            : test
signer_fingerprint: b82fc8ef4a4475c0f69ac168176c2bfc58f572eb716c4eadd65e4785c155dd8e
signature_date    : 2026-05-19T09:18:18.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         : pJ5z38SapjSdeHZdu03Ih0SLxTzr5Ed9xJEGQus6K9yYUujfTFcRrA9UeKcB7GtsMYY32uVtB2ilMS4LL08WSVZxDoVLxOTqCK5RXwVoFcpPJVBO+dJ/zdqU2PSAMb91AjZxbNgwvHxEnbG4SfvtKDcAYbCvm38Ub4E0BfWetgnk7BJDKObUxRS307xSfJBLGF772lQuR+Jm+YhV8x+zJCVqr7kVyJvIn/Hq2mXhjLoOPDX+q8BKZmG2IIHxjeWcaRkPLTkrEp2lb4BUyq+OKSFxYj1Kn9W7RrtNFofPkQp4ucPOOVNuIkgtOzpaEZzw1zsslORIe6FZVFbxylSOlg==

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


bin_name_x86 = "VC_redist.x86.exe"
uninstall_key_x86 = r"Microsoft Visual C\+\+ 2015-2022 Redistributable \(x86\)"

bin_name_x64 = "VC_redist.x64.exe"
uninstall_key_x64 = r"Microsoft Visual C\+\+ 2015-2022 Redistributable \(x64\)"

bin_name_arm64 = 'VC_redist.arm64.exe'
uninstall_key_arm64 = r"Microsoft Visual C\+\+ 2022 Redistributable \(Arm64\)"

silent_args = "/quiet /norestart"


def install():

    vers = control.get_software_version()

    install_exe_if_needed(
        bin_name_x86,
        silent_args,
        min_version=vers,
        name=uninstall_key_x86
    )
    
    if iswin64() or iswinarm():
        install_exe_if_needed(
            bin_name_x64,
            silent_args,
            min_version=vers,
            name=uninstall_key_x64
        )
    
    if iswinarm():
        install_exe_if_needed(
            bin_name_arm64,
            silent_args,
            min_version=vers,
            name=uninstall_key_arm64
        )


def audit():

    vers = control.get_software_version()
    status = "OK"

    x86vers = installed_softwares(name=uninstall_key_x86)[0]['version']
    if Version(x86vers) > Version(vers):
        status = "WARNING"
        print(f"The version installed on the workstation is more recent (x86) ! {x86vers} ")

    if iswin64() or iswinarm():
        x64vers = installed_softwares(name=uninstall_key_x64)[0]['version']
        if Version(x64vers) > Version(vers):
            status = "WARNING"
            print(f"The version installed on the workstation is more recent (x64) ! {x64vers} ")
    
    if iswinarm():
        arm64vers = installed_softwares(name=uninstall_key_arm64)[0]['version']
        if Version(arm64vers) > Version(vers):
            status = "WARNING"
            print(f"The version installed on the workstation is more recent (arm64) ! {arm64vers} ")

    return status


def iswinarm():
    return platform.machine() == 'ARM64'

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

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

url_dl_x86 = "https://aka.ms/vs/18/release/VC_redist.x86.exe"
url_dl_x64 = "https://aka.ms/vs/18/release/VC_redist.x64.exe"
url_dl_arm64 = 'https://aka.ms/vs/18/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_arm64)
    wget(url_dl_arm64, bin_name_arm64, proxies=proxies)

    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.set_software_version(version)
    control.save_control_to_wapt()

    print(f"Changing package version to: {version} in WAPT\\control")

e912e9e653a5295a382bf86521f9b852aeeca823f4a9bf10bb2fba7dd9445288 : VC_redist.arm64.exe
90e48ade404e4576d023abfa374f323555f233982a8805ea9ac63dca9491a16b : VC_redist.x64.exe
b6ab675f0a27e6600f9726e75dea08d99c15f8ea4b842a2a1d988fa9529d39b9 : VC_redist.x86.exe
01ca7fe94636e5a08fcb73849d3b5df25d51e2c82f4dd1a08f01798b25899819 : WAPT/certificate.crt
d923b283561ac34fbd0671c4be42dcbb4810553f337772c3e2a0d22e60a9a918 : WAPT/control
057c35554d9d1cc9cc72c539d46ad6f712893330a3ce22ff7676e84fcbb34fba : WAPT/icon.png
03493cee4a34c25f21eb7e2f399a072752c3b78ff58033210d70638ecd10ec2c : luti.json
2581c498ca4c428765791273b7e46c187537ddc6d9b1a6f3289abcf1aae3131f : setup.py
6bc5e535c183cfab0de3f76055cb15854ed58658210bb03d472ff1d5e2dfe86b : update_package.py