[RESOLU] [Error 145] Le répertoire n'est pas vide

Questions about WAPT Packaging / Requêtes et aides autour des paquets Wapt.
Règles du forum
Règles du forum
* English support on www.reddit.com/r/wapt
* Le support en français se fait sur ce forum
* Merci de préfixer le titre du thread par [RESOLU] s'il est résolu.
* Préciser version de WAPT installée (1.3.9 / 1.3.13 / 1.5 )
* Préciser OS du serveur (Linux / Windows) et version (Debian Jessie/Stretch - CentOS 7 - Windows Server 2012/2016)
* Préciser OS de la machine d'administration/création des paquets (Windows 7 / 10)
erickeke
Messages : 4
Inscription : 12 juin 2019 - 10:33

10 juil. 2019 - 11:19

Bonjour,

Lors de l'installation de paquets j'ai souvent ce genre de messages :

[Error 145] Le répertoire n'est pas vide : 'c:\\users\\admin\\appdata\\local\\temp\\waptvqjgz'

Je suis obligé de rajouter un time.sleep(5) pour ne pas avoir l'erreur.

Je ne saurais pas redire si c'est à chaque fois en utilisant la même fonction : dans le cas ci-dessus :
install_exe_if_needed("setup-gprolog-1.4.5-msvc-x64.exe",'/VERYSILENT /SUPPRESSMSGBOXES /NORESTART',key='GNU Prolog_is1',min_version='1.4.5')

Ca le fait systématiquement avec cet installeur, si je fais remove et install à nouveau idem.

Par contre le dossier fini bien par être effacé dans temp.

Je n'ai pas d'antivirus sur ma machine de test, Windows 7 64 bits, client Wapt 1.7.3.5.

Ce n'est pas grave, ce n'est pas un bug majeur ;-)

Cordialement
Avatar de l’utilisateur
dcardon
Expert WAPT
Messages : 326
Inscription : 18 juin 2014 - 09:58
Localisation : Nantes
Contact :

11 juil. 2019 - 11:29

Bonjour Erickeke,
erickeke a écrit :
10 juil. 2019 - 11:19
Lors de l'installation de paquets j'ai souvent ce genre de messages :

[Error 145] Le répertoire n'est pas vide : 'c:\\users\\admin\\appdata\\local\\temp\\waptvqjgz'

Je suis obligé de rajouter un time.sleep(5) pour ne pas avoir l'erreur.

Je ne saurais pas redire si c'est à chaque fois en utilisant la même fonction : dans le cas ci-dessus :
install_exe_if_needed("setup-gprolog-1.4.5-msvc-x64.exe",'/VERYSILENT /SUPPRESSMSGBOXES /NORESTART',key='GNU Prolog_is1',min_version='1.4.5')

Ca le fait systématiquement avec cet installeur, si je fais remove et install à nouveau idem.

Par contre le dossier fini bien par être effacé dans temp.

Je n'ai pas d'antivirus sur ma machine de test, Windows 7 64 bits, client Wapt 1.7.3.5.

Ce n'est pas grave, ce n'est pas un bug majeur ;-)
L'installeur doit probablement créer des fichiers temporaire dans le répertoire où le paquet est dézippé.

En effet le répertoire temporaire wapt (ici c:\\users\\admin\\appdata\\local\\temp\\waptvqjgz, préfixe wapt et suffixe aléatoire) est créé lors de l'installation pour dézipper le contenu du paquet WAPT. Après WAPT exécute le script python setup.py. Si dans le setup.py vous faite appel à un installeur qui se dézippe dans le répertoire courant, et après l'install qui supprime ses fichiers un peu trop tard après la clôture de l'exe, je pense que l'on peut obtenir le problème que vous indiquez.

L'option que vous proposer de rajouter un sleep(5) doit laisser le temps au setup.exe de faire son nettoyage (alors qu'il a déjà rendu la main au run()...). Le packaging n'est pas une science exacte :-)

Cordialement,

Denis
Denis Cardon - Tranquil IT Systems
Communiquez autour de vous sur WAPT! Envoyez nous vos url de blog et d'articles dans la catégorie votre avis du forum, nous les mettrons en avant sur le site WAPT
Avatar de l’utilisateur
dcardon
Expert WAPT
Messages : 326
Inscription : 18 juin 2014 - 09:58
Localisation : Nantes
Contact :

12 juil. 2019 - 13:34

dcardon a écrit :
11 juil. 2019 - 11:29
Bonjour Erickeke,
erickeke a écrit :
10 juil. 2019 - 11:19
Lors de l'installation de paquets j'ai souvent ce genre de messages :

[Error 145] Le répertoire n'est pas vide : 'c:\\users\\admin\\appdata\\local\\temp\\waptvqjgz'

Je suis obligé de rajouter un time.sleep(5) pour ne pas avoir l'erreur.

Je ne saurais pas redire si c'est à chaque fois en utilisant la même fonction : dans le cas ci-dessus :
install_exe_if_needed("setup-gprolog-1.4.5-msvc-x64.exe",'/VERYSILENT /SUPPRESSMSGBOXES /NORESTART',key='GNU Prolog_is1',min_version='1.4.5')

Ca le fait systématiquement avec cet installeur, si je fais remove et install à nouveau idem.

Par contre le dossier fini bien par être effacé dans temp.

Je n'ai pas d'antivirus sur ma machine de test, Windows 7 64 bits, client Wapt 1.7.3.5.

Ce n'est pas grave, ce n'est pas un bug majeur ;-)
L'installeur doit probablement créer des fichiers temporaire dans le répertoire où le paquet est dézippé.

...
En y réfléchissant, on pourrait gérer ce cas dans le cadre standard des install WAPT. Si le répertoire n'est pas vide et que la suppression ne peut pas se faire, on attend 5 secondes et on reteste. Si la deuxième fois ça ne passe toujours pas, on le met en erreur, sinon ça permet de bien supprimer le répertoire.

On verra pour intégrer cela dans une prochaine version.

Cordialement,

Denis Cardon
Denis Cardon - Tranquil IT Systems
Communiquez autour de vous sur WAPT! Envoyez nous vos url de blog et d'articles dans la catégorie votre avis du forum, nous les mettrons en avant sur le site WAPT
Répondre