[..] Problème MAJ Autoit

Aide et conseils concernant AutoIt et ses outils.
Règles du forum
.
Répondre
Avatar du membre
walkson
Modérateur
Modérateur
Messages : 1038
Enregistré le : ven. 12 août 2011 19:49
Localisation : Hurepoix
Status : Hors ligne

[..] Problème MAJ Autoit

#1

Message par walkson »

Bonjour,
J'ai un gros problème avec les mises à jour Autoit, je m'explique:
J'essaye un script du forum us et Scite m'indique l'absence d'une multitude de variables. Je passe un message pour l'indiquer et on me répond qu'avec une mise à jour, mes problèmes seront résolus, ce qui est le cas (en grande partie).
Puis je lance un autre script qui fonctionnait jusque là et, Paf ! Scite m'indique "error: _StringReverse(): undefined function.". J'ouvre l'include concerné et là:

Code : Tout sélectionner

; #CURRENT# =====================================================================================================================
; _HexToString
; _StringBetween
; _StringEncrypt
; _StringExplode
; _StringInsert
; _StringProper
; _StringRepeat
; _StringTitleCase
; _StringToHex
 
_StringReverse() n'existe plus !?!
Je fais une recherche sur mon PC et je retrouve plusieurs versions de String.au3 dont la plus récente est

Code : Tout sélectionner

Func _StringReverse($sString)
    Return StringReverse($sString)
EndFunc   ;==>_StringReverse
et je comprends enfin.
Si je soulève le problème, c'est parce que ce n'est pas la première fois que ça m'arrive et je me retrouve confronté à un dilemme: Soit je fais les mises à jour et mes vieux scripts ne fonctionnent plus, soit je ne fais pas les MAJ et les nouveaux scripts ne fonctionnent pas.
Avez vous des solutions ? Comment faites vous ? Merci de vos réponses.
Cordialement,
Walkson
"Horas non numero nisi serenas " Le canon de midi
(Je ne compte que les heures heureuses)
Avatar du membre
Tlem
Site Admin
Site Admin
Messages : 11818
Enregistré le : ven. 20 juil. 2007 21:00
Localisation : Bordeaux
Status : Hors ligne

Re: [..] Problème MAJ Autoit

#2

Message par Tlem »

La solution la plus logique serait de mettre à jour les scripts puisqu'ils ne sont pas compilés et donc probablement amenés à évoluer.

Envoyé depuis mon mobile en utilisant Tapatalk.
Thierry

Rechercher sur le forum ----- Les règles du forum
Le "ça ne marche pas" est une conséquence commune découlant de beaucoup trop de raisons potentielles ...

Une idée ne peut pas appartenir à quelqu'un. (Albert Jacquard) tiré du documentaire "Copié n'est pas volé".
Avatar du membre
walkson
Modérateur
Modérateur
Messages : 1038
Enregistré le : ven. 12 août 2011 19:49
Localisation : Hurepoix
Status : Hors ligne

Re: [..] Problème MAJ Autoit

#3

Message par walkson »

Bonjour Tlem,
En théorie, je suis d'accord avec vous. Mais en pratique, c'est une autre paire de manches ! Quand c'est vous qui avait écrit le script, ce n'est pas tjs évident de retrouver la bonne variable ou Funct mais si ce n'est pas vous l'auteur, cela relève de la gageure...
Bon nombre de scripts que j'ai récupérés me servent d'exemples
Je réfléchis à créer un dossier OldInclude et de renvoyer les includes sur ce dossier en cas de problème mais je ne sais pas si c'est la bonne solution
Cordialement,
Walkson
"Horas non numero nisi serenas " Le canon de midi
(Je ne compte que les heures heureuses)
Avatar du membre
jchd
AutoIt MVPs (MVP)
AutoIt MVPs (MVP)
Messages : 2284
Enregistré le : lun. 30 mars 2009 22:57
Localisation : Sud-Ouest de la France (43.622788,-1.260864)
Status : Hors ligne

Re: [..] Problème MAJ Autoit

#4

Message par jchd »

Je réfléchis à créer un dossier OldInclude et de renvoyer les includes sur ce dossier en cas de problème mais je ne sais pas si c'est la bonne solution
Non. La bonne solution est d'adapter les sources à l'évolution du langage et des includes standards.
La cryptographie d'aujourd'hui c'est le taquin plus l'électricité.
Avatar du membre
mikell
Spammer !
Spammer !
Messages : 6292
Enregistré le : dim. 29 mai 2011 17:32
Localisation : Deep Cévennes
Status : Hors ligne

Re: [..] Problème MAJ Autoit

#5

Message par mikell »

Ben voyons...
Dans l'absolu c'est vrai que c'est l'idéal
Mais en pratique, tu te tapes des heures de taf pour mettre à jour les scripts concernés de ta bibliothèque, et à la release suivante rebelote :roll:
Entre les fonctions _Array* qui déconnent et les constantes qui changent de nom, t'es pas arrivé
Dixit Melba23 du forum US : "the backwards compatibility is not a priority" :mrgreen:

Alors oui il y a des solutions alternatives que personnellement j'utilise face à ce genre de souci
- extraire de l'include la(les) fonction(s) concernée(s) puis intégrer directement dans le script
- s'il y en a trop, récupérer l'ancien include et se faire un include custom (genre <Array3381.au3> ) au nom différent de celui de l'include officiel
Comme ça tes cheveux blanchissent moins vite ^^
" L'échec est le fondement de la réussite. " (Lao-Tseu )
" Plus ça rate, plus on a de chances que ça marche " (les Shadoks )
Avatar du membre
jchd
AutoIt MVPs (MVP)
AutoIt MVPs (MVP)
Messages : 2284
Enregistré le : lun. 30 mars 2009 22:57
Localisation : Sud-Ouest de la France (43.622788,-1.260864)
Status : Hors ligne

Re: [..] Problème MAJ Autoit

#6

Message par jchd »

Mouais, à condition de gérer les corrections d'erreurs.
La cryptographie d'aujourd'hui c'est le taquin plus l'électricité.
Avatar du membre
Tlem
Site Admin
Site Admin
Messages : 11818
Enregistré le : ven. 20 juil. 2007 21:00
Localisation : Bordeaux
Status : Hors ligne

Re: [..] Problème MAJ Autoit

#7

Message par Tlem »

Les "Script breaking" ne sont pas si nombreux que ça. Je comprend que cela représente un certain travail, mais comme je l'ai déjà dit, si le script n'est pas compilé, c'est qu'il est nécessaire de le mettre à jour et donc de travailler dessus !

Si vous ne voulez pas êtres embêté avec les includes, compilez en Exe voir en A3x car les changements sur fonctions interne est plutôt rare.

Envoyé depuis mon appareil mobile.
Thierry

Rechercher sur le forum ----- Les règles du forum
Le "ça ne marche pas" est une conséquence commune découlant de beaucoup trop de raisons potentielles ...

Une idée ne peut pas appartenir à quelqu'un. (Albert Jacquard) tiré du documentaire "Copié n'est pas volé".
Avatar du membre
walkson
Modérateur
Modérateur
Messages : 1038
Enregistré le : ven. 12 août 2011 19:49
Localisation : Hurepoix
Status : Hors ligne

Re: [..] Problème MAJ Autoit

#8

Message par walkson »

Bonsoir,
Je voulais rajouter que l'on peut regretter l'absence d'informations sur les modifications des includes. Un txt dans le dossier include signalant les scripts modifiés ainsi que les fonctions ou les variables et surtout une date de modification dans l'entête du script. Ça règlerait pas mal de problèmes.
Si mon anglais n'était pas aussi mauvais, c'est une idée que je défendrais sur le forum us
Tlem a écrit :si le script n'est pas compilé, c'est qu'il est nécessaire de le mettre à jour et donc de travailler dessus !
Avec tous les exemples de scripts sur le forum dont un bon nombre n'est plus fonctionnel, bien du travail en perspective ! :P
Cordialement,
Walkson
"Horas non numero nisi serenas " Le canon de midi
(Je ne compte que les heures heureuses)
Avatar du membre
orax
Modérateur
Modérateur
Messages : 1479
Enregistré le : lun. 23 mars 2009 04:50
Localisation : ::1
Status : Hors ligne

Re: [..] Problème MAJ Autoit

#9

Message par orax »

Il y a la page Script Breaking Changes in Recent Versions (disponible également dans le fichier d'aide) qui apporte ce type d'informations.
De petits détails peuvent faire toute la différence. — Quand la boule de neige commence à rouler… poussez-la. (Columbo)
Avatar du membre
jchd
AutoIt MVPs (MVP)
AutoIt MVPs (MVP)
Messages : 2284
Enregistré le : lun. 30 mars 2009 22:57
Localisation : Sud-Ouest de la France (43.622788,-1.260864)
Status : Hors ligne

Re: [..] Problème MAJ Autoit

#10

Message par jchd »

Qu'on le souhaite ou non, c'est quand même le prix à payer pour voir le langage évoluer, les bugs corrigés et les fonctions internes ou include standard améliorées.

Un source C de quelques années lève des tonnes de warnings et d'erreurs franches avec un compilateur aux normes actuelles, sans parler de C++. Pourtant les ressources humaines à la base ne sont pas comparables entre C[++] et AutoIt.

PLus ce que vient de poster orax à juste titre.
La cryptographie d'aujourd'hui c'est le taquin plus l'électricité.
Répondre