Page 1 sur 1

Visual Studio Community 2022

Publié : 01 sept. 2026 - 20:12
par OlivierSchmitt
Bonjour,

Il m'arrive d'avoir des installations en erreurs sur ce paquet:
https://wapt.tranquil.it/store/fr/tis-v ... -community

Code : Tout sélectionner

Traceback (most recent call last):
  File "C:\Program Files (x86)\wapt\common.py", line 4534, in install_wapt
    exitstatus = setup.install()
  File "C:\Program Files (x86)\wapt\private\tmp\waptb94tqg96\setup.py", line 102, in install
  File "C:\Program Files (x86)\wapt\common.py", line 4451, in new_func
    return func(*args, **kwargs)
  File "C:\Program Files (x86)\wapt\setuphelpers_windows.py", line 1746, in install_exe_if_needed
    error('setup exe file %s not found in package' % exe)
  File "C:\Program Files (x86)\wapt\waptutils.py", line 2198, in error
    raise EWaptSetupException('Fatal error : %s' % reason)
waptutils.EWaptSetupException: Fatal error : setup exe file C:\Program Files (x86)\Microsoft Visual Studio\Installer\setup.exe not found in package

EWaptSetupException: Fatal error : setup exe file C:\Program Files (x86)\Microsoft Visual Studio\Installer\setup.exe not found in package

Voici la fonction en cause:

Code : Tout sélectionner

# Upgrading the software
    [b]if installed_softwares(name=app_name) and need_install(name=app_name, min_version=control.get_software_version()):[/b]
       [b] bin_path = makepath(programfiles32, "Microsoft Visual Studio", "Installer", "setup.exe")[/b]
        install_exe_if_needed(
            bin_path,
            # /finalizeInstall --passive or --quiet
            silentflags=r'update --layoutPath "C:\localVSlayout" --in "C:\localVSlayout\Response.json" --force --nocache --noUpdateInstaller --noWeb --quiet --norestart',
            name=app_name,
            min_version=control.get_software_version(),
            get_version = get_version,
            timeout=2500,
            # time_wait_uninstallkey_present=5000,
        )

En effet, il arrive que installed_softwares(name=app_name) renvoie:

Code : Tout sélectionner

>>> from setuphelpers import *
>>> bin_name = "vs_setup.exe"
>>> app_name = "Visual Studio Community 2022"
>>> dir_name = "localVSlayout"
>>> temp_dir = makepath(systemdrive, dir_name)
>>> app_dir = makepath(programfiles,"Microsoft Visual Studio","2022")
>>>[b] installed_softwares(name=app_name)[/b]
[{'key': '908e4091', 'name': 'Visual Studio Community 2022', 'version': '17.14.36', 'install_date': '2026-07-15 00:00:00', 'install_location': 'C:\\Program Files\\Microsoft Visual Studio\\2022\\Community', 'uninstall_string': '"C:\\Program Files (x86)\\Microsoft Visual Stud
io\\Installer\\setup.exe" uninstall --installPath "C:\\Program Files\\Microsoft Visual Studio\\2022\\Community"', 'publisher': 'Microsoft Corporation', 'system_component': 0, 'win64': False}]
Mais que cela n'existe pas:

Code : Tout sélectionner

C:\Windows\System32\config\systemprofile>dir "c:\Program Files (x86)\Microsoft Visual Studio\
 Le volume dans le lecteur C s’appelle Windows
 Le numéro de série du volume est 60CB-EC76

 Répertoire de c:\Program Files (x86)\Microsoft Visual Studio

29/07/2026  11:34    <DIR>          .
01/09/2026  19:19    <DIR>          ..
15/07/2026  16:13    <DIR>          Shared
               0 fichier(s)                0 octets
               3 Rép(s)  176 418 471 936 octets libres

Afin de résoudre le problème je dois supprimer l'entrée du registre de l'uninstaller avec les commandes ci dessous puis supprimer les dossiers comme dans la fonction uninstall et le dossier localVSlayout:

Code : Tout sélectionner

>>> soft = installed_softwares(name="Visual Studio Community 2022")
>>> soft
[{'key': '908e4091', 'name': 'Visual Studio Community 2022', 'version': '17.14.36', 'install_date': '2026-07-15 00:00:00', 'install_location': 'C:\\Program Files\\Microsoft Visual Studio\\2022\\Community', 'uninstall_string': '"C:\\Program Files (x86)\\Microsoft Visual Stud
io\\Installer\\setup.exe" uninstall --installPath "C:\\Program Files\\Microsoft Visual Studio\\2022\\Community"', 'publisher': 'Microsoft Corporation', 'system_component': 0, 'win64': False}]
>>> unregister_uninstall(soft[0]["key"])
>>> installed_softwares(name="Visual Studio Community 2022")
[]
>>>
Serait-il possible d'ajouter dans def uninstall():

Code : Tout sélectionner

soft = installed_softwares(name="Visual Studio Community 2022")
if soft:
    unregister_uninstall(soft[0]["key"])[/b]
ou vaut-il peut-être mieux tester ainsi dans la fonction install:

Code : Tout sélectionner

    if installed_softwares(name=app_name) and need_install(name=app_name, min_version=control.get_software_version()):
        bin_path = makepath(programfiles32, "Microsoft Visual Studio", "Installer", "setup.exe")
        if isfile(bin_path):
        install_exe_if_needed(
            bin_path,
            # /finalizeInstall --passive or --quiet
            silentflags=r'update --layoutPath "C:\localVSlayout" --in "C:\localVSlayout\Response.json" --force --nocache --noUpdateInstaller --noWeb --quiet --norestart',
            name=app_name,
            min_version=control.get_software_version(),
            get_version = get_version,
            timeout=2500,
            # time_wait_uninstallkey_present=5000,
        )

Re: Visual Studio Community 2022

Publié : 02 sept. 2026 - 10:18
par italbot
Bonjour,

Je peux regarder ça, est-ce que vous avez le problème avec des versions en particulier ? Afin que je puisse tester de mon côté.

Cordialement,

Ingrid