[UDF] Contrôle des Includes manquantes sur 3.2.12.x

Partagez des fonctions et des UDF AutoIt.
Règles du forum
.
Répondre
Avatar du membre
Tlem
Site Admin
Site Admin
Messages : 11772
Enregistré le : ven. 20 juil. 2007 21:00
Localisation : Bordeaux
Status : Hors ligne

[UDF] Contrôle des Includes manquantes sur 3.2.12.x

#1

Message par Tlem »

Suite au passage de la version 3.2.10.0 à la 3.2.12.0 un gros changement concernant les fichiers de constantes à été effectué ce qui entraine de nombreux disfonctionnement des anciens script, et rend plus compliqué le choix des Includes à ajouter.
Pour vous faciliter la tache, voici le code d'un script qui analyse votre script pour vérifier si il ne manque pas d'Include.
Merci à monoceres pour ce code bien pratique.

Code : Tout sélectionner

; Post original : http://www.autoitscript.com/forum/index.php?showtopic=70902&view=findpost&p=519264
; Créateur : monoceres (Du forum Anglais).
;
#include <Array.au3>
#include <File.au3>
$script = FileOpenDialog("Choisissez le script à modifier.", @ScriptDir, "au3 (*.au3)")
$autoitdir = @ProgramFilesDir & "\AutoIt3\Include"
;FileSelectFolder("Répertoire Include Autoit","")
If $autoitdir = "" Then Exit
If $script = "" Then Exit
Global $includelines, $scriptdata
Global $includestoadd[1], $count = 0
$scriptdata = FileRead($script)
$includes = _FileListToArray($autoitdir, "*Constants*.au3")
For $i = 1 To UBound($includes) - 1
    _FileReadToArray($autoitdir & "\" & $includes[$i], $includelines)
    For $j = 1 To UBound($includelines) - 1
        If StringLeft($includelines[$j], 12) = "Global Const" Then
            $const = StringMid($includelines[$j], StringInStr($includelines[$j], "$"), StringInStr($includelines[$j], '=') - StringInStr($includelines[$j], "$") - 1)
            If StringInStr($scriptdata, $const) Then
                _ArrayAdd($includestoadd, $includes[$i])
                ExitLoop
            EndIf

        EndIf
    Next
Next
For $a = 1 To UBound($includestoadd) - 1
    If StringInStr($scriptdata, "#include <" & $includestoadd[$a] & ">") = 0 And StringInStr($scriptdata, "#include<" & $includestoadd[$a] & ">") = 0 And $includestoadd[$a] <> "GUIConstants.au3" Then
        _FileWriteToLine($script, 1, "#include <" & $includestoadd[$a] & ">")
        $count += 1
    EndIf
Next
MsgBox(0, "Resultat", $count & " Include(s) ont été ajouté(s)")
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
Tlem
Site Admin
Site Admin
Messages : 11772
Enregistré le : ven. 20 juil. 2007 21:00
Localisation : Bordeaux
Status : Hors ligne

Re: [UDF] Contrôle des Includes manquantes sur 3.2.12.0

#2

Message par Tlem »

Grosse nouveauté dans la gestion des includes.

Notre ami Allemand Xenobiologist à créer un outil magnifique, qui s'intègre totalement dans Scite4AutoIt !

Cet outil qui existe depuis pas mal de temps, et qui permet tout simplement de ne pas oublier des includes dans l'écriture de vos scripts s'appel : Organize Includes

Installez le script, puis lors de l'écriture du votre tapez tout simplement CTRL+SHIFT+ALT+I pour voir apparaître un GUI qui analysera les includes manquants.
Un clic sur le bouton Organize includes et le tour est joué !!!

Allez, je ne vous fait plus languir, suivez ce lien => Organize includes

N'oubliez pas de télécharger le Zip en bas du post pour installer Organize includes automatiquement.
Voici le lien => Organizeincludes.zip

Une petit image de démo :

Image
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
jl56
Niveau 7
Niveau 7
Messages : 411
Enregistré le : mer. 24 oct. 2007 22:42
Localisation : 56000
Status : Hors ligne

Re: [UDF] Contrôle des Includes manquantes sur 3.2.12.x

#3

Message par jl56 »

bonjour a tous

J'ai eu très peur pour mes applis lors de la nouvelle version d'autoit en 3.2.12x
suite au erreurs include etc...
j'étais revenu a la version 3.2.10 pour des raisons de compatibilités

hier j'ai pris mon courage à deux mains et j'ai utilisé l'utilitaire Xenobiologist
génial

j'ai converti ma dizaine d'applis et tout çà l'air de fonctionner
la seul erreur était la modification du nom d'une fonction que j'utilisai
_StringAddComma par _StringAddThousandsSep

merci à tlem pour l'info et à Xenobiologist pour son utilitaire
a+ jl56
Avatar du membre
Jikoo
Niveau 2
Niveau 2
Messages : 26
Enregistré le : mer. 17 sept. 2008 00:04
Localisation : France
Status : Hors ligne

Re: [UDF] Contrôle des Includes manquantes sur 3.2.12.x

#4

Message par Jikoo »

Très bon petit script de Monoceres. Je l'ai modifié et intégré à mon programme : GCS Search (voir sur ce forum) :wink:

Image

Image

Image
GCS Search 1.07 (GUI Control Styles Search)
Un outil multilingue pour vous aider avec les vieux scripts notamment sur les forums. Il y a aussi un menu dynamique. Mettez vos raccourcis à l'intérieur. Convertisseur de couleurs intégré.
Répondre