Random installation

Questions about WAPT Packaging / Requests and help regarding Wapt packages.
Forum Rules
Community Forum Rules
* English support on www.reddit.com/r/wapt
* French community support is available on this forum
* Please prefix the topic title with [RESOLVED] if it is resolved.
* Please do not edit a topic that is tagged [RESOLVED]. Open a new topic referencing the old one.
* Specify the installed WAPT version, full version, and build number (2.2.1.11957 / 2.2.2.12337 / etc.) as well as the Enterprise/Discovery edition.
* Versions 1.8.2 and earlier are no longer supported. The only questions accepted regarding version 1.8.2 are related to upgrading to a supported version (2.1, 2.2, etc.).
* Specify the server OS (Linux/Windows) and version (Debian Buster/Bullseye - CentOS 7 - Windows Server 2012/2016/2019).
* Specify the OS of the administration/package creation machine and the machine with the problematic agent, if applicable (Windows 7/10/11/Debian 11/etc.).
* Avoid asking multiple questions when opening a topic, otherwise it may be ignored. If there are multiple topics, open separate topics, preferably one after the other and not all at the same time (i.e., do not spam the forum).
* Include code snippets, screenshots, and other images directly in the post. Links to Pastebin, Bitly, and other third-party sites will be systematically removed.
* As with any community forum, support is provided voluntarily by members. If you require commercial support, you can contact Tranquil IT's sales department at 02.40.97.57.55
Answer
Lazaare
Messages: 7
Registration: Nov. 28, 2025 - 10:20 a.m.

June 1, 2026 - 08:36

For WAPTConsole Enterprise version 2.6.1.17765 and Windows.

Hello everyone,
I am trying to deploy a "homemade" WAPT package. A folder and file structure is contained within the package, and via the setup.py file configured in PyScripter, I am copying/pasting these files into the same folder structure already present on the machine.
However, when I deploy this package, on some machines it installs perfectly fine, no problem. While on other machines (which are technically exactly the same), this error log appears in WAPT:

Code: Select all

Traceback (most recent call last):
  File "C:\Program Files (x86)\wapt\common.py", line 4349, in install_wapt
    packagetempdir = entry.unzip_package(cabundle=self.cabundle, target_dir = tempfile.mkdtemp(prefix='wapt',dir=self.wapt_temp_dir))
  File "C:\Program Files (x86)\wapt\waptpackage.py", line 2664, in unzip_package
    raise e
  File "C:\Program Files (x86)\wapt\waptpackage.py", line 2656, in unzip_package
    verified_by = self.check_package_signature(cabundle,ignore_missing_files=ignore_missing_files)
  File "C:\Program Files (x86)\wapt\waptpackage.py", line 2607, in check_package_signature
    raise EWaptCorruptedFiles('Error in package %s in %s, files corrupted, SHA not matching for %s' % (self.asrequirement(), self.sourcespath, errors,))
waptpackage.EWaptCorruptedFiles: Error in package nomdupaquet-2026(=0-12) in C:\Program Files (x86)\wapt\private\tmp\wapt7uw7xem7, files corrupted, SHA not matching for liste de l'entièreté des fichiers contenus dans le paquet
I have checked for the absence of blocking files such as "thumbs.db" or "desktop.ini".
Looking at other posts, I have checked the integrity of the build via PyScriter and I know that I do not have an antivirus that is modifying files.
Do you have any suggestions on how to resolve this issue?

Thanks in advance !
italbot
Messages: 61
Registration: Sep 26, 2023 - 3:50 p.m.

June 1, 2026 - 09:52

Hello,

If it installs correctly on some machines, I suspect a file has been modified by the system.

What types of files are included in your package? Is it possible to see the script in the setup file?

Sincerely,

Ingrid
Tranquil IT
Lazaare
Messages: 7
Registration: Nov. 28, 2025 - 10:20 a.m.

June 1, 2026 - 10:13

Code: Select all

from setuphelpers import *
#import shutil
import os

uninstallkey = []
# déclarer les dossiers dans l'arborescence du paquet
sig_folder = "IdGISView"
resources_folder = "Resources"
idmeansplugin_folder = "IdMeansPlugin"
idoctplugin_folder = "IdOctPlugin"
settings_folder = "Settings"

dossiers_paquets_possibles = [
    os.path.join(sig_folder),
    os.path.join(resources_folder),
    os.path.join(idmeansplugin_folder),
    os.path.join(idoctplugin_folder),
    os.path.join(settings_folder)]

# déclarer le chemin de l'application CRIMSON, à déclarer comme dossier racine de destination
app_dir = makepath("c:", "CRIMSON 8.0.2", "Bin")

#
# Définir l'update des dossiers à partir de fichiers contenus dans les dossiers du paquet
def install():
    # Filtrer seulement les dossiers existants dans le paquet WAPT
    dossiers_paquet_reels = []
    for dossier in dossiers_paquets_possibles:
        if os.path.isdir(dossier):
            #print(f"ce dossier {dossier} existe")
            dossiers_paquet_reels.append(dossier)
        else:
            #print(f"ce dossier {dossier} n'existe pas")
            pass
        pass

    # boucler sur tous les dossiers sources (et donc leur equivalent en nom en dossier destination)
    for chaque_dossier in dossiers_paquet_reels:

        #print("mapping : %s" %dossier_racine_destination_equivalent)


        for root, dirs, files in os.walk(chaque_dossier):
            for file in files:
                    fichier_source = os.path.join(root, file)
                    creation_si_existe_pas = os.path.join(app_dir, root)
                    os.makedirs(os.path.join(creation_si_existe_pas), exist_ok=True)

                    if file.startswith("del_"):
                        file_a_delete = file[len("del_"):]
                        fichier_destination = os.path.join(root, file_a_delete)
                        chemin_et_fichier_destination = os.path.join(app_dir, fichier_destination)
                        if os.path.isfile(chemin_et_fichier_destination):
                            os.remove(chemin_et_fichier_destination)
                        else:
                            print("[INFO] fichier introuvable, suppression ignorée :", chemin_et_fichier_destination)

                    else:
                        fichier_destination = fichier_source
                        chemin_et_fichier_destination = os.path.join(app_dir, fichier_destination)
                        filecopyto(fichier_source, chemin_et_fichier_destination)
                    pass
            pass
        pass
    pass
def unistall():
    pass
That's the "setup" code.
And the files in the package are essentially..
- json
- vgeo
- pdf

How could the files be modified between the PyScripter build and the upload to WAPT?
User avatar
dcardon
WAPT Expert
Messages: 1929
Registration: June 18, 2014 - 09:58
Location: Saint Sébastien sur Loire
Contact :

June 1, 2026 - 11:01

Hello Lazare,

Does this list include all the files, or just a portion? Does it include the installation paths for files longer than 256 characters?

Regards,

Denis
Denis Cardon - Tranquil IT
Share your experiences on WAPT! Send us your blog and article URLs in the "Your Opinion of the forum, and we'll feature them on the WAPT
Lazaare
Messages: 7
Registration: Nov. 28, 2025 - 10:20 a.m.

June 1, 2026 - 1:29 PM

Hello Denis,

The maximum length of a path would be 243. Would a path longer than 256 cause a blockage?
Regarding the precise list of file extensions:
  • png / jpg
    Symbols / sld
    svg
    vgt
    vrgis / vgeo
    dbf
    prj
    qix
    shp/shx
    vgeo
    xml
    bin
    db
    bgz
    pdf
    htm
    docx
    ink
    doc
    gif
    ppt
    xls / xlsx
    ods
    pps / ppsx / pptx
    - wmf
    js
    emz
    mp3
    odt
    dwg
User avatar
dcardon
WAPT Expert
Messages: 1929
Registration: June 18, 2014 - 09:58
Location: Saint Sébastien sur Loire
Contact :

June 1, 2026 - 4:14 PM

Hello Lazarus,

By default, Windows has historically had a maximum path length of 256 characters. Modern systems do not have this limitation, which is now entirely artificial. However, depending on the machine configuration and how the local filesystem is accessed, the limitation may or may not apply.

When installing the wapt package, it is unzipped into c:\windows\temp in a directory with a random name, the length of which is added to the 243 characters you already have in your directory tree...

On one of the machines that are experiencing problems, could you please check the value of:

Code: Select all

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\FileSystem]
"LongPathsEnabled"=dword:00000001
And if it is at 0, can you try changing it to 1 to see if that solves the problem (on a machine).

Sincerely,

Denis
Denis Cardon - Tranquil IT
Share your experiences on WAPT! Send us your blog and article URLs in the "Your Opinion of the forum, and we'll feature them on the WAPT
Answer