Page 1 sur 1

[..] Combo avec fichier .ini

Posté : lun. 05 août 2013 22:11
par Musy
Bonjour à toutes et à tous.

J'ai énormément parcouru le forum depuis que je m'amuse à dev avec Autoit. Mais, arrive le moment ou je tombe sur un os.
Je vais essayé d'être le plus clair possible.

J'ai créer une interface GUI simple, je préfère posté screen pour que ce soit plus lisible, je posterai la partie du code qui nous intéresse.
Image

En gros, c'est un raccourci de connexion, ou je pourrais mettre login et mot de passe. ils sont cryptés puis écrit dans un fichier .ini qui se présente comme ceci :

Code : Tout sélectionner

[Connexion]
Login=CRYJRTJ1R68R
Mot de passe=0xDC29E0FE2838B51651J6R1RYJ297958C
Avec ce code :

Code : Tout sélectionner

IniWrite (@ScriptDir & "\cfg.ini", "Connexion", "Login", _StringEncrypt(1, $Pseudo, "motdepasse"))
IniWrite (@ScriptDir & "\cfg.ini", "Connexion", "Mot de passe", _Crypt_HashData($mdp, $CALG_SHA1))
J'ai créé une autre Fenêtre GUI ou je peux ajouter des comptes (Login + mot de passe) qui devrait aller dans .ini
Mon problème est le suivant :

Ce que je voudrais faire et que j'arrive pas depuis ce matin, c'est pouvoir stocker plusieurs compte dans le fichier .ini et ainsi pouvoir choisir le compte que je veux dans la GUICtrlCreateCombo qui associerait le bon mot de passe dans le Input du dessous.

J'espère avoir été à peu près clair. J'ai essayé plusieurs choses chaotiques :
► Afficher le texte
Je bloque vraiment, est-ce possible ? Dois-je utiliser des StringCompare à tous va ?

Merci d'avance, Amicalement Musy

Re: [..] Combo avec fichier .ini

Posté : lun. 05 août 2013 22:23
par Sea
Deux solutions me viennent en tête.
Faire un txt au lieux d'un .ini et dans le fichier tu commences par le login du 1er utilisateur un séparateur le mot de passe du 1er utilisateur un séparateur le login de la 2e personne un séparateur et le mdp de la 2e personne et ainsi de suite...
Puis après tu fais un stringsplit avec ce séparateur et après ta toutes les données que tu veux (dans les entrées pair du tableau de stringsplit tu as les MDP et dans les impaires tu as les Login)

En plus cette méthode te permet d'encrypter ton fichier .txt et donc d'avoir deux couches de cryptage pour les MDP ;)

Après il y à une méthode que je n'apprécie pas trop mais qui est réalisable.
Tu fais un ini de cette façon

Code : Tout sélectionner

[Information]
NbCompte=2

[Connexion1]
Login=CRYJRTJ1R68R
Mot de passe=0xDC29E0FE2838B51651J6R1RYJ297958C

[Connexion2]
Login=CRYJRsdqdsqdR
Mot de passe=0xDCdsfdsfs651J6R1RYJ297958C
 
Et ainsi de cette façon tu peux récupérer toutes les données que tu veux... Mais bon perso j'aime pas trop cette méthode mais c'est toi qui fais comme tu veux :)

Re: [..] Combo avec fichier .ini

Posté : lun. 05 août 2013 22:34
par Musy
ah Merci pour les idées, une question me vient : Comment faire avec le Combo pour affichier tout un tableau ?

Re: [..] Combo avec fichier .ini

Posté : lun. 05 août 2013 22:40
par Tlem
Jetez un exemple sur ce code récent : http://www.autoitscript.fr/forum/viewto ... 039#p80039

Re: [..] Combo avec fichier .ini

Posté : lun. 05 août 2013 22:45
par Sea
Voici un petit exemple de création de combo à partir de tableau
► Afficher le texte
Edit: Muarf battu par ce maudit admin !!! :mrgreen:

Re: [..] Combo avec fichier .ini

Posté : lun. 05 août 2013 23:38
par Musy
Merci à tous pour vos réponses, j'étudie ça et je reviens vers vous dés demain ;)

Re: [..] Combo avec fichier .ini

Posté : mar. 06 août 2013 08:35
par jguinch
Salut.
@Musy : tu peux aussi essayer de faire un truc du genre :
► Afficher le texte

Re: [..] Combo avec fichier .ini

Posté : mer. 07 août 2013 21:39
par Musy
Je vous remercie pour les réponses, vous m'avez bien aidé puisque maintenant cela fonctionne. J'ai écrit dans un fichier ini en mode texte normal pour faire "mieux" avec des séparateurs. Découpe puis stringcompare pour associer les comptes avec les bons mdp et c'est bon. Merci encore

Musy !

Re: [..] Combo avec fichier .ini

Posté : mer. 07 août 2013 22:50
par Tlem
N'oubliez pas la balise [R] dans le titre de votre premier message si votre sujet est résolu.