[BUG] Fichiers temporaires de PS CC stockés n'importe où

Démarré par Samoreen, Novembre 15, 2016, 13:34:03

« précédent - suivant »

Samoreen

Bonjour,

Pendant que je suis dans les bugs liés à des problèmes de variable d'environnement... (voir également "[SOLUTION] Bug dans le workflow LR => DOP => LR" dans le forum DxO)...

Si vous voyez apparaître à la racine du disque qui contient le dossier TMP ou TEMP de Windows ou dans un endroit incongru comme C:\Users\<user name>\AppData\Local\, des dossiers (en général vides) dont le nom contient la chaîne "zxpsign", c'est un bug de PS CC.

Par exemple, chez moi, le dossier temporaire de Windows est e:\Temp et je vois à la racine du disque E: des dossier vides nommés E:\Tempzxpsign7edf4341f6bc90a5 ou nom similaire qui s'empilent avec le temps. Le dossier devrait être E:\Temp\zxpsign7edf4341f6bc90a5.

L'explication est simple : un programmeur chez Adobe a oublié d'ajouter un "\" là où il fallait et n'a jamais testé son code.

Le volume occupé est faible (ces dossiers sont en général vides) mais ça fait désordre et de plus, ils devraient être éliminés en fin de session PS CC. Mais bon, on a l'habitude de ces programmeurs qui ne laissent pas les lieux dans l'état où ils les ont trouvés. Pour corriger ce comportement de malotru, on peut ajouter un "\" à la valeur pointée par les variables d'environnement TMP et/ou TEMP mais ce n'est pas vraiment standard et ça peut perturber d'autres applications (les plugins Nik par exemple). J'ai vraiment du mal à imaginer que ces programmeurs n'aient pas une routine à utiliser systématiquement afin de normaliser les chemins d'accès aux fichiers qu'ils utilisent. C'est un truc élémentaire que tout développeur a normalement dans sa boîte à outils. Pas propre.

Signalé depuis l'arrivée de la 2015, corrigeable en quelques secondes, toujours là dans la 2017. Encore un bug "mineur" qui a peu de chances d'arriver un jour en haut de la liste. Mineur mais énervant pour ceux qui essaient de maintenir un système à peu près propre.

Ces dossiers peuvent être supprimés sans problème.
Patrick

Samoreen

#1
Je m'aperçois que quelqu'un a proposé un fichier .cmd permettant de lancer PS en supprimant automatiquement les dossiers en sortie. Voir le texte du script à éditer en fonction de son propre environnement ici :

http://forum.luminous-landscape.com/index.php?topic=111760.0 (message #4)

À quoi en sommes-nous réduits...
Patrick

ChatOuille

Merci Patrick pour ta précieuse information. Je n'utilise pas CC et je n'ai pas remarqué ces répertoires temporaires. J'ai pourtant copié ces scripts au cas où. Petite remarque : il s'agit de .bat (et pas de .cmd) ce qui permet facilement de l'adapter à la configuration du PC.

Samoreen

Citation de: ChatOuille le Novembre 16, 2016, 18:45:04
Petite remarque : il s'agit de .bat (et pas de .cmd) ce qui permet facilement de l'adapter à la configuration du PC.

En fait, je l'ai converti en .cmd puis en .exe avec Bat To Exe Converter.

[at] ECHO OFF
SETLOCAL ENABLEDELAYEDEXPANSION
rem start photoshop
START "" /B /WAIT /D"C:\Program Files\Adobe\Adobe Photoshop CC 2017\" "PhotoShop.exe"
rem change directory to were Adobe temporary directories are being created
CD /DE:\   <=== mon drive pour les répertoire temporaires
rem delete Adobe temporary directories
for /D %%a in (*zxpsign*) do rmdir "%%a"

Patrick

ChatOuille

Ah oui, évidemment, l'exécution est alors plus rapide. Merci.  ;)

Samoreen

Citation de: ChatOuille le Novembre 16, 2016, 19:50:55
Ah oui, évidemment, l'exécution est alors plus rapide. Merci.  ;)

Ça évite surtout d'avoir une fenêtre ligne de commande qui s'ouvre au lancement de PS.
Patrick

ChatOuille

Merci. Quand l'occasion se présente je vais essayer ce Bat To Exe Converter; j'ai vu qu'il existe une version portable. Avant je bricolais un peu, mais maintenant je reste plus calme car je me rends compte que les exigences changent constamment avec les versions successives (Win et autres). Heureusement j'ai encore qqs applis que j'avais écrit pour Win 98 et qui fonctionnent encore sur Win 7.

Samoreen

Le seul inconvénient avec Bat_To_Exe c'est quand on veut ajouter une icône à l'exécutable créé. Le programme n'accepte que les fichiers .ico. Il ne sait pas aller les chercher dans les fichiers .exe. Il a donc fallu que j'extraie l'icône PS de photoshop.exe avec Resource Hacker pour la réutiliser avec Bat_To_Exe au moment de la création de l'exécutable. Ce n'est pas fondamental mais c'est plus joli. Sinon, ça fonctionne sans problème. Ces dossiers temporaires inutiles sont systématiquement effacés en fin de session PS.

J'ai un peu de mal à admettre ce manque de respect pour l'environnement utilisateur. Aujourd'hui, quasiment toutes les applications déversent un tas de fichiers et dossiers temporaires un peu partout dans le système ainsi que nombre d'entrées dans la registry et ne se préoccupent pas de nettoyer en fin de session ou de faire le ménage à la désinstallation. C'est vraiment du travail de cochon.
Patrick

ChatOuille

Citation de: Samoreen le Novembre 17, 2016, 10:20:12
J'ai un peu de mal à admettre ce manque de respect pour l'environnement utilisateur. Aujourd'hui, quasiment toutes les applications déversent un tas de fichiers et dossiers temporaires un peu partout dans le système ainsi que nombre d'entrées dans la registry et ne se préoccupent pas de nettoyer en fin de session ou de faire le ménage à la désinstallation. C'est vraiment du travail de cochon.
C'est la première chose que j'ai pensé lorsque tu as mentionné ce pb : il n'y a pas qu'Adobe qui laisse des traces. Sans compter le malware. Pour nettoyer un virus (heureusement pas chez moi) j'ai du nettoyer des centaines de références dans la Registry. Mais de nos jours la plupart du software commercial a aussi un coté « malware », pour suivre les traces, pour te mettre sous pression d'acheter, pour vendre tes données....

Pour les icônes, pas de problème, j'ai plus de 5000 icônes que j'ai extrait, +modifié ou créé.

Samoreen

J'ai omis de mentionner que l'inconvénient de la solution proposée, c'est qu'elle ne peut pas fonctionner quand on lance Photoshop depuis Lightroom, puisqu'on ne peut pas spécifier l'exécutable à lancer (à moins de créer une entrée spéciale dans le reste de la section "éditeurs externes" mais ça poserait quelques inconvénients, je pense).

Le problème ne se pose pas avec d'autres logiciels où l'on peut préciser en clair l'exécutable pour chaque éditeur externe.

La solution définitive est bien sûr qu'Adobe corrige ce bug.
Patrick

Patrice_nikon

Tu fais la même chose pour lightroom (et dans lightroom tu appelles PS directement si besoin).
Si des fichiers temporaires sont créés ils seront supprimés en sortie de lightroom.

Et tu peux aussi systématiquement au démarrage du PC nettoyer ces fichiers via une tâche planifiée.

Samoreen

Citation de: Patrice_nikon le Novembre 20, 2016, 16:28:47
Tu fais la même chose pour lightroom...

Oui, bien sûr, je peux faire tout ça mais ça finit par faire beaucoup pour corriger la négligence d'un programmeur qui ne se donne même pas la peine de tester son code.

Et ça ne résout pas tous les problèmes. Par exemple, si je le fais pour Lightroom, le roundtrip LR => DOP => LR ne fonctionnera plus.

Une tâche planifiée est peut-être finalement plus généraliste.
Patrick

OuiOuiPhoto

Donc le problème c'est PS qui de temps en temps laisse trainer un répertoire vide  sans que cela est le moindre impact sur le fonctionnement de ton ordi ou de PS ? C'est bien cela ? Et donc c'est un scandale ? Un manque de respect ? un bug ? :D Alors je suis aller voir. Des répertoires comme cela j'en ai deux a la racine ou se trouve mon répertoire temporaire et 5 dans mon répertoire temporaire.

Tu as raison. C'est des bolos chez Adobe. Leur développeurs ils codent avec les pieds.  :D

Samoreen

Citation de: OuiOuiPhoto le Novembre 20, 2016, 19:05:07
Et donc c'est un scandale ? Un manque de respect ? un bug ? :D Alors je suis allé voir...

Tout d'abord, le mode dérision, ça commence à être saoûlant. Ensuite, effectivement, semer partout des fichiers et des dossiers inutiles dans un système sans se préoccuper de leur nettoyage est un manque de respect de l'utilisateur. Enfin, si l'on considère que cette pratique n'est pas une spécialité d'Adobe, l'espace total occupé par ces déjections systématiques peut atteindre des valeurs parfois impressionnantes. Chaque nettoyage approfondi de mon système le démontre.

Non, il n'est pas illégitime d'exprimer son mécontentement devant ces pratiques désagréables. Si après avoir laissé ton véhicule en révision tu t'aperçois que le mécano a laissé des traces de cambouis partout, tu ne vas pas le remercier. Si ?

Maintenant, si tu aimes ça, tu peux envoyer un satisfecit à Adobe, ça compensera mes "jérémiades".
Patrick

ChatOuille

Citation de: Samoreen le Novembre 20, 2016, 14:53:31
J'ai omis de mentionner que l'inconvénient de la solution proposée, c'est qu'elle ne peut pas fonctionner quand on lance Photoshop depuis Lightroom, puisqu'on ne peut pas spécifier l'exécutable à lancer (à moins de créer une entrée spéciale dans le reste de la section "éditeurs externes" mais ça poserait quelques inconvénients, je pense).

Le problème ne se pose pas avec d'autres logiciels où l'on peut préciser en clair l'exécutable pour chaque éditeur externe.

La solution définitive est bien sûr qu'Adobe corrige ce bug.
Pour étoffer les solutions que Patrice_Nikon propose, je vais en rajouter une autre. On peut aussi sur LR proposer en tant que deuxième éditeur externe, notre script. Moi, j'ai PS CS6 par défaut (on ne peut pas changer et c'est dommage) et comme deuxième PS CS5 car certaines fonctions et plug-ins ne fonctionnent pas sur CS 6.

Je suis bien d'accord avec Samoreen que laisser ces déchets indésirables c'est un manque de respect, bien que le développeur ne va pas considérer cela comme un bug. Le temps presse et il faut remplir la caisse. Mais souvent des logiciels laissent des traces indésirables pour l'utilisateur mais bien désirables pour le développeur, et c'est bien pire. En tout cas je suis bien content que Samoreen aie signalé cette faute. Tout en sachant bien qu'il s'expose à la rigolade, mais il faut passer outre. On sait bien que 80% des forumeurs vont rester indifférents, un 18% vont rigoler mais cela peut porter aide à un 2%, et ce ça qui compte. Un grand merci !  ;)

Patrice_nikon


tkosak

Citation de: ChatOuille le Novembre 20, 2016, 20:42:48
Pour étoffer les solutions que Patrice_Nikon propose, je vais en rajouter une autre. On peut aussi sur LR proposer en tant que deuxième éditeur externe, notre script. Moi, j'ai PS CS6 par défaut (on ne peut pas changer et c'est dommage) et comme deuxième PS CS5 car certaines fonctions et plug-ins ne fonctionnent pas sur CS 6.

Je suis bien d'accord avec Samoreen que laisser ces déchets indésirables c'est un manque de respect, bien que le développeur ne va pas considérer cela comme un bug. Le temps presse et il faut remplir la caisse. Mais souvent des logiciels laissent des traces indésirables pour l'utilisateur mais bien désirables pour le développeur, et c'est bien pire. En tout cas je suis bien content que Samoreen aie signalé cette faute. Tout en sachant bien qu'il s'expose à la rigolade, mais il faut passer outre. On sait bien que 80% des forumeurs vont rester indifférents, un 18% vont rigoler mais cela peut porter aide à un 2%, et ce ça qui compte. Un grand merci !  ;)

Le développeur, s'il a un doigt d'honnêteté intellectuelle, considérera bien ça comme un bug. Par contre son chef, lui, décidera que ça ne plante pas le système et qu'on peut l'oublier. Le développeur a travaillé comme un pied (pas le temps etc) mais le financier ne dépensera pas un sou pour corriger cette m... étron.

OuiOuiPhoto

Citation de: Samoreen le Novembre 20, 2016, 20:05:49
Tout d'abord, le mode dérision, ça commence à être saoûlant.

A ta santé :D. Si ça ne te plait pas tu as un bouton signaler. N'hésite pas. Moi c'est tes jérémiades permanentes que je trouve soûlante. Chacun son truc. Et j'exprime mon mécontentement devant cette pratique désagréable :D.  Mais bon c'est vrai que la tu tiens le BUG du siècle. Et ce BUG suffit à lui-même pour jeter le discrédit sur les développeurs qui ont toute ma solidarité.

Ce n'est pas eux les fautifs. Ils font sûrement au mieux avec les moyens qu'on leur donne. Ils ne sont pas responsables d'un processus de développement pas assez maîtrisé ou volontairement laxiste mis en place par leurs chefs. Ils sont en bas de la pyramide et donc ils ont ma solidarité.

Maintenant si tu veux taper sur leurs chefs pas de soucis :D

ChatOuille

Citation de: Patrice_nikon le Novembre 20, 2016, 21:04:00
Samoreen, c'est quoi DOP? DXO?

Je crois que DOP est DXO Optics Pro. DXO ne s'occupe pas seulement du logiciel, mais, entre autres, des tests (boîtiers et objectifs) qui d'ailleurs sont utiles pour le développement du logiciel.

ChatOuille

Citation de: OuiOuiPhoto le Novembre 20, 2016, 22:18:09
Et ce BUG suffit à lui-même pour jeter le discrédit sur les développeurs qui ont toute ma solidarité.

Ce n'est pas eux les fautifs. Ils font sûrement au mieux avec les moyens qu'on leur donne. Ils ne sont pas responsables d'un processus de développement pas assez maîtrisé ou volontairement laxiste mis en place par leurs chefs. Ils sont en bas de la pyramide et donc ils ont ma solidarité.

Maintenant si tu veux taper sur leurs chefs pas de soucis :D

Je pense que vous avez un petit malentendu. Je ne peux pas me substituer à Samoreen, mais je crois que quand il parle des « développeurs » il fait référence à la société et sa politique et pas aux employés qui bossent avec toutes leurs compétences mais qui sont contrains par des délais et autres.
Tu as bien vu d'ailleurs là ou il faut taper !