Page 2 sur 3

Re: [..] Script : Tagger.

Posté : jeu. 24 juil. 2014 15:05
par MisterP
Bon voilà, alors après un peu de réflexion, je décide de partir sur ma méthode qui devrait normalement être fonctionnelle.

Donc quelques bidouilles , hop , hop , hop ! Et pouf nous voilà avec un GUI avec les bons nom de bouton, et il ne reste plus qu'a compléter la Fonction Tagg (soit le coeur du script) :D :
► Afficher le texte
Voilà donc je m'attaque maintenant à la fonction Tagg ! :)

Re: [..] Script : Tagger.

Posté : jeu. 24 juil. 2014 15:27
par MisterP
J'ai testé le deux parce que la fenêtre de tag&rename qui pop quand tu double clic c'était pas le top.

Mon préféré des 2 est TagScanner, mais hélas , les 2 logiciels ne me seront d'aucune utilité ...
--> Ils ne font pas les .Wav .... Seulement le mp3 et c'est nul le mp3 ... c'est du 320 :mrgreen: la qualité CD ça change ta vie , et celle de tes oreilles aussi :P

Re: [..] Script : Tagger.

Posté : jeu. 24 juil. 2014 16:18
par orax
Il y a aussi le FLAC au lieu du WAV. Ça serait quand même moins lourd.
https://fr.wikipedia.org/wiki/Free_Lossless_Audio_Codec

Re: [..] Script : Tagger.

Posté : jeu. 24 juil. 2014 19:23
par MisterP
@ Orax, oui mais je vais jusque 24b , le FLAC s'arrête a 16b ;)


J'aurai besoin de savoir si un ControlID est toujours le même pour la même application, ou si c'est un hasard que AutoIt m'ai indiqué le même ControlID pour Tag&Rename 2 fois d'affilé ?

Je voulais également savoir , comment ne pas prendre une partie du nom d'un fichier ?
J'aimerai que mes dossiers Albums ne possèdent que leurs noms et pas : [NomAlbum] ([année]) Il me faudrait donc supprimer 7 caractères.
Cependant je ne souhaite pas que le nom sois modifié, le nom doit rester tel quel, c'est juste le tableau qui doit prendre le nom de l'album sans l'année.
Est il possible de stocker le nom dans une variable, renommer le dossier en enlevant les 7 caractères puis a la fin du script remettre le nom comme avant ?
Sachant qu'il me faudra faire également l'opération inverse car il me faudra après que l'année et donc supprimer une parenthèse d'un côté et tous les caractères sauf les 4 chiffres ?

Je me demandais aussi, comment faire pour que lorsque je dois rentrer dans mes champs vides les valeurs de mes variables que ce soit la bonne qui tombe ?? ...
Exemple si c'est un morceau de mariah carey , il faut obligatoirement que ce soit la bonne valeur du tableau qui soit rentré dans mon champ vide (artiste) , soit Mariah Carey.
De même pour l'album , l'année , et le nom du morceau ....

Parce que pour le moment tout ce que je sais faire c'est stocker les valeurs (et encore, il faut que je vous jointe le nouveau Code parce qu'il est fortement possible qu'il y ait des erreurs), et clicker dans les champs (remplir les clicks avec la postion donnée c'est pas trop compliqué)

Je cherchais également comment utiliser une lettre du clavier (pas rentrer une valeur, par exemple juste utiliser la touche flèche du bas) en background dans une fenêtre, comme ca tout le script marcherait en background :D

Re: [..] Script : Tagger.

Posté : jeu. 24 juil. 2014 19:52
par jchd
Carey en upsampling :lol:

Re: [..] Script : Tagger.

Posté : jeu. 24 juil. 2014 20:20
par overflow
pour la manipulation des chaines de caractere

https://www.autoitscript.com/autoit3/do ... gement.htm

Re: [..] Script : Tagger.

Posté : ven. 25 juil. 2014 11:44
par MisterP
Carey en upsampling :lol:
Bah quoi ? :mrgreen:
overflow a écrit :pour la manipulation des chaines de caractere

https://www.autoitscript.com/autoit3/do ... gement.htm
Merci ! ;)
J'espère mettre un Code sur le forum d'ici ce soir avec mon avancement et si possible avoir fini avec les Arrays, mais c'est pas gagné :lol:

Re: [..] Script : Tagger.

Posté : sam. 26 juil. 2014 01:53
par MisterP
J'ai un avancé, avant de continuer plus loin j'aimerai savoir si ce que j'ai fait est juste :)
Je pense que ça devrais être bon.
Tout compte fait, je me moque que mon script tourne en background, au pire je laisserai tourner le pc une nuit et puis voilà :lol: , les ControlID changent à chaque fois, et c'est prise de tête...
J'aurai également besoin de savoir comment simuler l'appui d'une touche sur un clavier exemple : Simuler l'appui de la flèche du bas, de la touche Entrée.

Merci d'avance,
► Afficher le texte

Re: [..] Script : Tagger.

Posté : sam. 26 juil. 2014 02:25
par orax
Pour simuler un appui sur une touche, Send() et ControlSend() seront tes amis.
MisterP a écrit :les ControlID changent à chaque fois, et c'est prise de tête...
Pas grave. Le paramètre controlID n'attend pas spécialement un ID.
Exemple tiré de la doc :
Clique sur la 2ème instance d'un bouton qui contient « Finish ».

Code : Tout sélectionner

ControlClick("My Window", "", "[CLASS:Button; TEXT:Finish; INSTANCE:2]")

Re: [..] Script : Tagger.

Posté : sam. 26 juil. 2014 09:46
par MisterP
orax a écrit :Pour simuler un appui sur une touche, Send() et ControlSend() seront tes amis.
D'accord ! Merci beaucoup ! ;) je vais desuite essayer ça :D Et le rajouter dans mon script :P
orax a écrit :les ControlID changent à chaque fois, et c'est prise de tête...Pas grave. Le paramètre controlID n'attend pas spécialement un ID.
Super !!! Les Instances n'ont pas l'air de changer en plus :) .
Par contre si je met juste l'instance et la Class , c'est bon ?? Parce que le truc c'est que les Title des fenêtres pour tagger, changent à chaque fois...
Exemple :
Tag Editor [C:\Users\TRALALALA\Desktop\Gros Dossier Factice\Adèle\21 (2014)\10 - Lovesong.wav]
Donc pour cette fenêtre (tagg) à la limite on peux se débrouiller avec les variables, mais pour la fenêtre même de Tag&Rename ça risque d'être compliqué :(

Re: [..] Script : Tagger.

Posté : sam. 26 juil. 2014 11:11
par mikell
ControlClick("Tag Editor", ... etc)
ça marche aussi si tu ne mets que le début du titre - et qu'il n'existe pas d'autre fenêtre dont le nom commence par "Tag Editor"

Re: [..] Script : Tagger.

Posté : sam. 26 juil. 2014 11:31
par MisterP
Bon ben j'ai encore un peu avancé :)
J'ai décidé d'ajouter 2 fonctions (1 est en cours de réalisation, l'autre pas commencée) : TaggMorc (pour tagger un morceau) TaggAlb (pour tagger l'album, donc TaggMorc sera évidemment compris dans TaggAlb)

J'ai un problème avec ma fonction Run ... Ca marche pour le notepad, mais pour Tag&Rename, nada ...
J'ai beau mettre "TagRename.exe" , TagRename Tag&Rename.exe ou encore Tag&Rename , rien ...
C'est bizarre ...

Mikell, Tag Editor doit être au débtu du titre ou si il est dans le titre c'est bon ?
Parce que je dois faire pareil pour la fenêtre même de Tag&Rename, sauf que le début c'est une variable, au contraire de Tag Editor justement :wink:
En tout cas merci, je vais pouvoir finir de compléter quelques trucs :)

Voici l'avancement de ce matin :
► Afficher le texte
Je continue cette apreme :P

Re: [..] Script : Tagger.

Posté : sam. 26 juil. 2014 11:52
par overflow
tout comme la gestion des chaines , la reponse est dans la doc ....

https://www.autoitscript.com/autoit3/do ... ns/Run.htm

Re: [..] Script : Tagger.

Posté : sam. 26 juil. 2014 13:45
par MisterP
overflow a écrit :tout comme la gestion des chaines , la reponse est dans la doc ....

https://www.autoitscript.com/autoit3/do ... ns/Run.htm
Je ne trouve pas la réponse ... Elle doit forcément se trouver dans la partie que je ne comprends pas ... Soit, celle-ci :
► Afficher le texte

Re: [..] Script : Tagger.

Posté : sam. 26 juil. 2014 14:23
par mikell
MisterP a écrit :Je ne trouve pas la réponse ...
Run ( "program" [, "workingdir" [, show_flag [, opt_flag]]] )
program : The full path of the program (EXE, BAT, COM, or PIF) to run
Mais tu pourrais aussi utiliser ShellExecute
MisterP a écrit :Mikell, Tag Editor doit être au début du titre ou si il est dans le titre c'est bon ?
Si "Tag Editor" peut être ailleurs qu'au début du titre, tu dois mettre en tête de script

Code : Tout sélectionner

Opt("WinTitleMatchMode", 2)
Tu dois remplir ce paramètre 'titre' dans toutes les fonctions Control*

Re: [..] Script : Tagger.

Posté : sam. 26 juil. 2014 15:07
par MisterP
D'accord, ben alors je vais faire ça, je vais utiliser le ShellExecute ;)
Parce que je comprends pas, avec le notepad, ca marche en mettant Notepad.exe , (qui est le nom complet) donc avec Tag&Rename si je met "TagRename.exe" c'est censé marcher alors que ça ne marche pas ... (pourtant j'ai bien revérifié, et c'est bien le nom exact et complet du .exe ...
mikell a écrit :Tu dois remplir ce paramètre 'titre' dans toutes les fonctions Control*
Oui papa :mrgreen: :lol:

D'accord , merci ! Je rajoute ça !! :wink:

Re: [..] Script : Tagger.

Posté : sam. 26 juil. 2014 15:11
par orax
Full path = chemin complet. Ce n'est pas seulement le nom complet de l'exécutable.
Donc ça sera plutôt un truc du genre : "C:\Program Files (x86)\Tag&Rename\Tag&Rename.exe".

Re: [..] Script : Tagger.

Posté : sam. 26 juil. 2014 17:42
par mikell
MisterP a écrit : je comprends pas, avec le notepad, ca marche
Notepad a un statut d'application système. Avec celles-ci on peut se permettre des frivolités

Code : Tout sélectionner

run("regedit")
run("notepad")

Re: [..] Script : Tagger.

Posté : sam. 26 juil. 2014 23:37
par MisterP
C'est encore moi ! :D
Bon alors même avec ça, ça ne marche pas :
Run ( ""C:\Program Files (x86)\TagRename\TagRename.exe"")
Problème :
C:\Users\LALALA\Desktop\TEST.au3 (1) : ==> Unable to parse line.:
Run ( ""C: \Program Files (x86)\TagRename\TagRename.exe"")
Run ( ""C: ^ ERROR
>Exit code: 1 Time: 0.05868

Mais bon , c'est plus un problème, vu que je passe par ShellExecute et que ça marche parfaitement ! :)
ShellExecute ( "C:\Program Files (x86)\TagRename\TagRename.exe")

Donc pour ce soir :
Func TaggMorc , finie !
Il me reste donc a faire la Func TaggAlb
-Test de SyntaxCheckProd (Eh ben j'ai du boulot ^^)
Normalement dès que j'ai fini ma Fun TaggAlb, je n'ai plus qu'a refaire du SyntaxCheckProd et ça devrait être bon :D
Demain je ne suis malheureusement pas chez moi, donc je vais essayer d'avancer sur support papier, et je rédigerai tout ça le soir en rentrant dans mon script et mettrai mon code sur le forum.

Le Code à ce jour :
► Afficher le texte

Re: [..] Script : Tagger.

Posté : sam. 26 juil. 2014 23:57
par orax
Run ( ""C:\Program Files (x86)\TagRename\TagRename.exe"")
C'est pour la décoration les 2 "" ? :mrgreen:
MisterP a écrit :Donc pour ce soir :
Func TaggMorc , finie !
Non non !! Pas si vite !

Code : Tout sélectionner

C:\...\test2.au3 - 43 error(s), 1 warning(s)
!>23:48:29 AU3Check ended. Press F4 to jump to next error.rc:2
Avec 43 erreurs, ce n'est pas le moment d'aller dormir !Image