| | DofusLog-v1_10 - 12/10/2009 | |
|
+7I-diable shinnig Vorion jiub loulesacrifieur GuimSummoner Zamiza 11 participants | |
Auteur | Message |
---|
Zamiza Aspirant
Nombre de messages : 25 Age : 38 Date d'inscription : 12/08/2007
| Sujet: DofusLog-v1_10 - 12/10/2009 Lun 28 Avr - 23:01 | |
| script version 1_10 dispo le 12/10/2009, ici.(Je vous conseille d'aller plutôt sur le thread en lien ci-dessus, ça sera plus simple pour m'y retrouver dans les MàJ ! ^^) *ajout* Le script a été vu par des gens d'Ankama, qui l'ont "toléré". Ne modifiant pas d'une manière quelconque le personnage ou le compte, il est en accord avec la Charte de Dofus. Bonjour/b'soir à tous ! ^^ Voilà un script que j'ai proposé à Kaffeine et qui m'a parut intéressant à vous fournir à tous. ^^ Le principe :Choisir parmis une liste contenue dans un fichier texte le compte à logger. Un clic sur "Lancer", et hop, la fenêtre Dofus s'ouvre depuis le registre (miracle), puis passer la souris sur la zone d'entrée du compte/mdp, et hop, il s'inscrit tout-seul. Ensuite, il faut passer la souris sur le bouton "OK", et ça co votre perso (le clic est fait à voitre place ^^). En plus de ça, le script se ferme tout-seul. Réserves :- Ceux qui n'ont pas confiance en moi (j'leur en veut pas ^^) peuvent vérifier : le script ne contient aucun moyen pour moi de récupérer vos identifiants à quelque moment que ce soit. (C'est d'ailleur pour que vous puissiez vérifier que j'en note le code source, et non une version "compilée".) - Le soucis majeur de ce script, c'est la facilité pour quiconque touche àvotre ordi d'atterrir soit sur le script et de le lancer, soit sur le fichier texte qui contient les logs (voir plus bas, le manuel d'utilisation. ^^) Donc, Si vous doutez, évitez !- J'irai pas vérifier que vous l'utilisez ou pas, je m'en contrefiche. - J'utlise exactement la version que je vous transmet. Si je met à jour, je vous ferai parvenir la MaJ. ^^ - Vu le nombre de comptes à moi ou auxquels j'ai accès, je n'ai pas besoin de vos logs en plus. - Vu le nombre de logs auxquels il serait possible d'accéder si je récupérais vos logs, je serais devenue folle avant d'avoir terminé de tous les vider. Donc, voilà le script en lui-même. ^^ -> - Spoiler:
#include #include ;~ #include ;Nécessaire uniquement pour les _ArrayDisplay() Dim $aLog[5] $repertoire = @scriptDir $fichier = "\log.txt" $existe = _FileReadToArray($repertoire & $fichier, $aLog) $prgChemin = RegRead("HKEY_LOCAL_MACHINE\SOFTWARE\Ankama\Dofus", "Path") Global $compte = 1 Global $FenBase Global $Label Global $Lancer Global $Modifier Global $Nouveau
If $existe = 1 Then $aLog[1] = (UBound($aLog) - 3) / 3 ;temporaire ! -Mais bien utile, en fait.. Je garde. ^^ ;~ _ArrayDisplay($aLog, "") Dim $Radio[$aLog[1]] $compte = 0 Fenetre() While 1 $msg = GUIGetMsg() Switch $msg Case 0 ContinueLoop
Case $GUI_EVENT_CLOSE Exit
Case $Radio[0] To $Radio[UBound($Radio) - 1] If $msg <> $Radio[$compte] Then GUICtrlSetPos($Radio[$compte], 5, 27 + ($compte * 7 * 3)) While $msg <> $Radio[$compte] $compte += 1 If $compte > (UBound($Radio) - 1) Then $compte = 0 EndIf WEnd GUICtrlSetPos($Radio[$compte], 15, 30 + ($compte * 7 * 3)) EndIf ;~ GUICtrlSetData($Label, $compte) ;Pour le débug du n° de compte
Case $Modifier Modifier($compte + 1) GUICtrlSetData($Radio[$compte], $aLog[($compte + 1) * 3 - 1])
Case $Nouveau ReDim $aLog[UBound($aLog) + 3] $aLog[1] = (UBound($aLog) - 3) / 3 ;temporaire ! Modifier($aLog[1]) ReDim $Radio[UBound($Radio) + 1] GUIDelete($FenBase) Fenetre()
Case $Lancer If $compte > 0 Then $compte = $compte * 3 EndIf $compte += 1 If $aLog[$compte + 3] <> "" Then If InputBox( @scriptName & " - Code du compte " & $aLog[$compte + 1], "Veuillez entrer le mot de passe pour accéder au compte de " & $aLog[$compte + 1] & " :", "", "°M") <> $aLog[$compte+3] Then MsgBox( 0x232, @scriptName & " - Se Logguer", "Identification ratée.") Exit EndIf EndIf ;~ GUICtrlSetData($Label, $aLog[$compte + 2]) ;Pour le débug du pass associé ExitLoop EndSwitch WEnd ;~ Sleep(1000) ;Pour le débug GUIDelete($FenBase) Else _FileWriteFromArray($repertoire & $fichier, $aLog, 2) Modifier($compte) $compte = (3 * $compte) - 2 EndIf
If MsgBox(0x51, @scriptname, "Lancement de la fenêtre Dofus !" & @CRLF & "Annuler pour fermer le script.", 3) = 2 Then Exit ;Juste pour test au-dessus, sans démarrage du client EndIf
ShellExecute("Dofus.exe","", $prgChemin) Do Do sleep(20) Until MouseGetCursor( ) = 5 ;Curseur 5 = Curseur d'édition de texte If WinActive("Dofus") Then MouseClick("left") EndIf Sleep(20) Until WinActive("Dofus") WinSetTitle("Dofus", "", "Dofus - " & $aLog[$compte + 1]) ;~ Send("^f") ;Mode "plein écran" Send($aLog[$compte + 2]) ;"login{tab}mdp"
Do sleep(20) $cur = MouseGetPos() Until ( (MouseGetCursor() = 0) And (PixelGetColor($cur[0], $cur[1]) = 16750848) ) ;Curseur 0 = Curseur Web/Couleur 16750848 = #FF9900 = orange. Donc : que le pointeur soit sur du orange + en mode "web" (sur le bouton "ok", quoi) MouseClick("left")
;============================================================ Func Fenetre() $FenBase = GUICreate(@scriptName, 200, 30 + $aLog[1] * 7 * 3 + 30) $Label = GUICtrlCreateLabel("Choisissez un compte à Logger :", 5, 5) GUIStartGroup() $Lancer = GUICtrlCreateButton("Lancer !", 150, 18 + 7 * $aLog[1], 48) $Modifier = GUICtrlCreateButton("Modifier", 150, 33 + $aLog[1] * 7 * 3, 48) $Nouveau = GUICtrlCreateButton("Nouveau", 1, 33 + $aLog[1] * 7 * 3) $compteCourant = 1 While $compteCourant < ($aLog[1] * 3) $Radio[$compteCourant / 3] = GUICtrlCreateRadio($aLog[$compteCourant + 1], 5, 20 + $compteCourant * 7, 130) $compteCourant += 3 WEnd GUICtrlSetState ($Radio[$compte], $GUI_CHECKED) GUICtrlSetPos($Radio[$compte], 15, 30 + $compte * 3 * 7) GUISetState() EndFunc
Func Modifier($compteCourant) $compteCourant = (3 * ($compteCourant - 1)) + 1 Do $aLog[$compteCourant + 1] = InputBox( @scriptName & " - Nouveau log", "Veuillez entrer un pseudonyme au compte :", $aLog[$compteCourant + 1], " M") ;Pratique pour le débug, l'affichage par défaut de l'élément choisit If @Error = 1 Then Return EndIf Until $aLog[$compteCourant + 1] <> "" _FileWriteToLine($repertoire & $fichier, $compteCourant + 1, $aLog[$compteCourant + 1], 1)
Do $aLog[$compteCourant + 1 + 1] = InputBox( @scriptName & " - Nom de compte de " & $aLog[$compteCourant + 1], "Entrez le nom de compte associé au pseudonyme " & $aLog[$compteCourant + 1] & " :", "", " M") If @Error = 1 Then Return EndIf Until $aLog[$compteCourant + 1 + 1] <> "" $aLog[$compteCourant + 1 + 1] &= "{TAB}" Do $aLog[$compteCourant + 2 + 1] = InputBox( @scriptName & " - Mot de passe du compte de " & $aLog[$compteCourant + 1], "Entrez le mot de passe du compte associé au pseudonyme " & $aLog[$compteCourant + 1] & " :", "", "°M") If @Error = 1 Then Return EndIf Until $aLog[$compteCourant + 2 + 1] <> "" $aLog[$compteCourant + 1 + 1] &= $aLog[$compteCourant + 2 + 1] _FileWriteToLine($repertoire & $fichier, $compteCourant + 2, $aLog[$compteCourant + 1 + 1], 1) $aLog[$compteCourant + 2 + 1] = InputBox( @scriptName & " - Mot de passe du pseudonyme " & $aLog[$compteCourant + 1], "Entrez un mot de passe pour utiliser le pseudonyme " & $aLog[$compteCourant + 1] & "," & @CRLF & "Ou laissez vide pour utilisation libre.", "","°") _FileWriteToLine($repertoire & $fichier, $compteCourant + 3, $aLog[$compteCourant + 2 + 1], 1) EndFunc Manuel d'Utilisation :À propos du script lui-même (à faire une seule fois ^^)- installez Auto-It3 (disponible ici, http://www.autoitscript.com/cgi-bin/getfile.pl?autoit3/autoit-v3-setup.exe) - ouvrez l'éditeur Auto-It3 (SciTE, program files\auto-it3\SciTE\SciTE.exe, par défaut) - copiez le code ci-dessus (simple sélection, puis ctrl+c) - collez dans l'éditeur - modifiez le nom "\log.txt" en ce que vous voulez (dans les premières lignes du script ^^), ce sera le fichier texte contenant vos logs - modifiez le répertoire "@scriptdir" par le chemin d'accès à votre fichier .txt contenant les logs. (par défaut, laissez le fichier log dans le même répertore que le script, sans toucher à ce "@scriptdir" ^^) -enregistrez le script en l'état sous le nom "DofusLogv1_5 .au3" pour que vous puissiez le retrouver facilement (même si le nom importe peu ^^), à un endroit un-peu caché, histoire d'être seuls à y accéder. Le must : une clef USB. ^^ Pour lancer le script ensuite, il suffit de double-cliquer sur le fichier "DofusLogv1_5.au3". ^^ Modifications prévues :- Ajouter/supprimer des lignes depuis DofusLog (sans passer par le fichier, quoi ^^) - Mettre en place une vraie sécurité sur le fichier texte - préparer la version 2 de DofusLog. ^^ Bref, tout ceci dans le seul but d'être flemmards. \o/ Bonne journée à vous. n_n Zamiza. (v1_6 en cours d'idée. :p Prévision : - mode "plein écran" à la connexion - activation du bouton "Nouveau") Edit du 2/01/2009 : mise en spoiler du code source, pour en garder la trace, sans déranger le thread. ^^
Dernière édition par Zamiza le Mer 14 Oct - 14:42, édité 11 fois (Raison : Version 1_10. ^^) | |
| | | GuimSummoner Administrateur
Nombre de messages : 1679 Date d'inscription : 03/10/2005
| Sujet: Re: DofusLog-v1_10 - 12/10/2009 Mar 29 Avr - 11:00 | |
| Personnellement l'idée de laisser mes comptes/pass dans un fichier est, pour ma part, anti-sécurité à mort. Et ce n'est pas une question de confiance loin de là mais je n'utiliserais pas ce code afin de simplifier la co de mes comptes En ayant déjà accès à pas moins 2x comptes j'ai pris l'habitude de perdre 5mns de mon temps pour logger ceux dont j'ai besoin, alors oki je perds du temps mais j'ai l'esprit tranquille à coté | |
| | | loulesacrifieur Défenseur du forum
Nombre de messages : 220 Age : 61 Localisation : dans mon petit coin douillé Date d'inscription : 20/03/2008
| Sujet: Re: DofusLog-v1_10 - 12/10/2009 Mar 29 Avr - 12:04 | |
| Comme le dit Guim ce pas que je n'ai confiance mais je prefere perdre un peu de temps sur mes comptes sans quoi le systeme n'est pas mal je prefere gérer mon même donc c'est par pour moi | |
| | | jiub Conquérant Floodesque
Nombre de messages : 2312 Age : 33 Localisation : la rochelle (17) Date d'inscription : 10/04/2006
| Sujet: Re: DofusLog-v1_10 - 12/10/2009 Mar 29 Avr - 13:11 | |
| moi je pense que je vais essayé s'toujours intéréssent de savoir comme sa marche, merci zamiza | |
| | | Invité Invité
| Sujet: Re: DofusLog-v1_10 - 12/10/2009 Mar 29 Avr - 17:48 | |
| En tou cas merci, c'est très sympas de vouloir partager sa avec nous mais en tout cas je prefere comme Guim perdre du temps à co mes comptes et avoir l'esprit tranquil plutot que le contraire. Mais mnt qui sait,je l'utiliserai peut être quand mm un jour ^^ |
| | | Vorion Chevalier
Nombre de messages : 385 Age : 32 Localisation : De retour pour vous faire chier xD Date d'inscription : 14/07/2007
| Sujet: Re: DofusLog-v1_10 - 12/10/2009 Mar 29 Avr - 21:07 | |
| Un peu vieu jeu comme tout le monde (enfin une partie :p ) je préfère taper mes logs plutot que laisser une machine le faire à ma place ^^. Je ne sentirai mieu ^^ mais merci quand meme zam ^^ | |
| | | Zamiza Aspirant
Nombre de messages : 25 Age : 38 Date d'inscription : 12/08/2007
| Sujet: Re: DofusLog-v1_10 - 12/10/2009 Jeu 1 Mai - 5:40 | |
| Voili-voiloù, version 1_5 mise à jour. ^^ Encore à activer le bouton "nouveau", et pouvoir virer des entrées, et je m'attaquerai à la version 2. ^^ En attendant, je comprends tout à fait ceux qui ne souhaitent pas avoir leurs logs dans un fichier texte. Et si je tenais vraiment à "minimiser" cet aspect, j'insisterais pas autant dessus. Bien à vous, Zamiza. | |
| | | shinnig Champion de la Tchatch
Nombre de messages : 561 Age : 31 Date d'inscription : 22/03/2008
| Sujet: Re: DofusLog-v1_10 - 12/10/2009 Ven 2 Mai - 10:06 | |
| on fais ton truck si on se fais hacker ou autre tu nous achete à tous 1milliard de kamas ok? | |
| | | Zamiza Aspirant
Nombre de messages : 25 Age : 38 Date d'inscription : 12/08/2007
| Sujet: Re: DofusLog-v1_10 - 12/10/2009 Lun 29 Déc - 16:18 | |
| Hoy les gens, de retour^^ J'avais promit à Juib que la prochaine version, je la filerai direct sur votre fofo, je le fais ! Tiré de ce Topic (fofo du Sanctu' ^^). --- Le message est en décalé dans le temps, je l'ai écrit hier. ^^ Hop, un ptit up pour dire l'avancement de la version 1_8, et ce que je prévois de faire ! (Wi, pour une fois, vous saurez tout AVANT que j'aie fini, huhu ^^) -> Supression d'une ligne dans les logs -> Menu d'options pour faire comme les boutons (mais dans un menu, smieux. ;o) -> Menu de Fichier pour changer de fichier (au cas où s'que vous vous seriez gourés n_n) -> Désactivation de la vérification de la bonne clef de cryptage (ouais, si vous vous trompez, y'a pu de vérification, bien fait pour vous. ^^) -> Plus discret, mais j'ai mit de l'ordre dans le script, c'est mieux présenté (enfin, 'faut le dire vite, ahahah). Et ensuite, amélioration pour vous : Je vais fournir un lien vers la version compilée (vous aurez juste un seul truc à lancer), un autre lien vers la version non-compilée (nécessitera AutoIt 3) et le code source ici toujours. Pour ceux qui voudront vérifier et être sûrs du contenu du script, même technique qu'avant : vous copiez ce qui est dans la balise [ code]-[/code] à venir, collez dans Sci-Te, et lancez le script sauvegardé. ^^ Voilà, j'essaie de finir ça d'ici ce soir ! Zamiza. P.S : La version 1_9 est aussi en préparation, mais j'ai la flemme de faire ça pour la 1_8. x') -> sauvegarde de certaines préférences (pas trop d'idée encore lesquelles, mais ça viendra. ^^) -> ajout d'une possibilité (à voir encore ^^) pour pouvoir connecter plusieurs comptes en "une" fois (une seule sélection de 3 comptes, pour connecter les 3 comptes un après l'autre) Et plein d'autres trucs. (Vi, je déborde d'imagination, je sais. x'p ) ------- Et le message du jour : Pour vous donner une idée de la tête que ça prend, voici chez moi : Lien en téléchargement : Version compilée (vous téléchargez, vous exécutez, et vous admirez. n_n) : DofusLog 1_8.exe - 260.69 KB Version script (nécessite toujours auto-it 3 ^^) : DofusLog 1_8.au3 - 11.53 KB Et le code entier (à copier-coller dans Sci-Te) : - Spoiler:
#include #include ;Pour l'encryptage
Global $fichier, $prgChemin, $FenBase, $Label, $Lancer, $OLancer, $Modifier, $OModifier, $Nouveau, $ONouveau, $Supprimer, $OSupprimer, $Boutons, $Options, $Fichiers, $FNouv, $FCharge, $FQuit, $aLog, $Radio Global $NbLignes = 2 ;Nombre de lignes utilisées par entrée dans le fichier de Log Global $compte = 1 Global $Separ = 10 ;Séparateur, hauteur en pixels entre deux lignes Global $Hligne = 13 ;hauteur présumée par ligne ( 13 pixels de haut ) Global $Ht = $Separ + 1 * $Hligne Global $msg Charge ()
While 1 $msg = GUIGetMsg () Switch $msg Case 0 ContinueLoop Case $GUI_EVENT_CLOSE, $FQuit GUIDelete ( $FenBase ) Exit Case $Radio [ 1 ] To $Radio [ UBound ( $Radio ) - 1 ] FRadio () Case $Modifier, $OModifier FModifier() Case $Nouveau, $ONouveau FNouveau() Case $Supprimer, $OSupprimer FSupprimer () Case $Lancer, $OLancer FLancer () Case $FNouv, $FCharge GUIDelete ( $FenBase ) Charge () EndSwitch WEnd ;==============================Fonctions totalement créées par Za==================================== Func Charge () Do $fichier = FileOpenDialog ( @scriptName & " - Sélectionnez ou créez un fichier contenant vos logs", @scriptDir, "Text files (*.txt)|All files (*.*)", 8, "Log.txt" ) If $fichier = "" Then Exit Until $fichier <> "" Dim $aLog [ 3 ] $existe = _FileReadToArray2 ( $fichier, $aLog ) $prgChemin = RegRead ( "HKEY_LOCAL_MACHINE\SOFTWARE\Ankama\Dofus", "Path" )
If Not $existe Then Modifier ( 1, $fichier ) EndIf
_FileReadToArray2 ( $fichier, $aLog ) Dim $Radio [ ( UBound ( $aLog ) + 1 ) / $NbLignes ] Fenetre ( ( UBound ( $aLog ) - 1 ) / $NbLignes ) EndFunc
Func Fenetre ( $tFen ) $FenBase = GUICreate ( @scriptName, 201, 19 + 50 + $tFen * $Ht + 30, -1, -1, 0x70000 ) $Label = GUICtrlCreateLabel ( "Choisissez un compte à Logger :", 1, 5, -1, -1 )
$Boutons = GUIStartGroup ( $FenBase ) $Lancer = GUICtrlCreateButton ( "Lancer !", 150, 18 + $Ht / 3 * $tFen , 47, 25 ) GUICtrlSetResizing ( $Lancer, 4 + 768 ) $Modifier = GUICtrlCreateButton ( "Modifier", 150, 33 + $tFen * $Ht, 48, 25, 0x8000 ) GUICtrlSetResizing ( $Modifier, 4 + 64 + 768 ) $Nouveau = GUICtrlCreateButton ( "Nouveau ", 1, 33 + $tFen * $Ht, -1, 25, 0x8000 ) GUICtrlSetResizing ( $Nouveau, 2 + 64 + 768 ) $Supprimer = GUICTRLCreateButton ( "Supprimer", 75, 33 + $tFen * $Ht, -1, 25, 0x8000 ) GUICtrlSetResizing ( $Supprimer, 8 + 64 + 768 )
$Fichiers = GUICtrlCreateMenu ( "Fichier", -1, 0 ) $FNouv = GUICtrlCreateMenuItem ( "Nouveau", $Fichiers, 0 ) $FCharge = GUICtrlCreateMenuItem ( "Charger", $Fichiers, 1 ) $FLigneVide = GUICtrlCreateMenuItem ( "", $Fichiers, 2 ) $FQuit = GUICtrlCreateMenuItem ( "Quitter", $Fichiers, 3 ) $Options = GUICtrlCreateMenu ( "Options", -1, 1 ) $OLancer = GUICtrlCreateMenuItem ( "Lancer !", $Options, 0 ) $ONouveau = GUICtrlCreateMenuItem ( "Nouveau", $Options, 1 ) $OModifier = GUICtrlCreateMenuItem ( "Modifier", $Options, 2 ) $OSupprimer = GUICtrlCreateMenuItem ( "Supprimer", $Options, 3 )
$compteBis = 1 While $compteBis < ( UBound ( $aLog ) ) / $NbLignes $Radio [ $compteBis ] = GUICtrlCreateRadio ( $aLog [ ( $compteBis ) * $NbLignes - 1 ] & " .", 5, 27 + ( ( $compteBis - 1 ) * $Ht ), 135 - 136, $Ht - 3, 0x2000 ) GUICtrlSetData ( $Radio [ $compteBis ], $aLog [ ( $compteBis ) * $NbLignes - 1 ] ) GUICtrlSetResizing ( $Radio [ $compteBis ], 2 + 32 + 512 ) $compteBis += 1 WEnd GUICtrlSetState ( $Radio [ $compte ], 0x0001 ) GUICtrlSetPos ( $Radio [ $compte ], 15, 30 + ( $compte - 1 ) * $Ht )
GUISetState () DesAct () EndFunc
Func DesAct ( $Active = 0 ) ;Réactive les boutons par défaut If $Active = 1 Then GUICtrlSetState ( $Lancer, $GUI_DISABLE ) GUICtrlSetState ( $Modifier, $GUI_DISABLE ) GUICtrlSetState ( $Nouveau, $GUI_DISABLE ) GUICtrlSetState ( $Supprimer, $GUI_DISABLE ) GUICtrlSetState ( $Options, $GUI_DISABLE ) GUICtrlSetState ( $Fichiers, $GUI_DISABLE ) Else GUICtrlSetState ( $Lancer, $GUI_ENABLE ) GUICtrlSetState ( $Modifier, $GUI_ENABLE ) GUICtrlSetState ( $Nouveau, $GUI_ENABLE ) GUICtrlSetState ( $Supprimer, $GUI_ENABLE ) GUICtrlSetState ( $Options, $GUI_ENABLE ) GUICtrlSetState ( $Fichiers, $GUI_ENABLE ) EndIf If ( UBound ( $aLog ) - 1 ) / $NbLignes < 2 Then GUICtrlSetState ( $Supprimer, $GUI_DISABLE ) GUICtrlSetState ( $OSupprimer, $GUI_DISABLE ) EndIf EndFunc
Func FSupprimer () If MsgBox ( 0x51, @scriptName & " - Suppression", "Souhaitez-vous vraiment détruire cette entrée ?" ) = 2 Then Return DesAct ( 1 ) $ligne = $compte * $NbLignes While $ligne < UBound ( $aLog ) $aLog [ $ligne - $NbLignes ] = $aLog [ $ligne ] $ligne += 1 WEnd ReDim $aLog [ UBound ( $aLog ) - $NbLignes ] ReDim $Radio [ UBound ( $Radio ) - 1 ] If $compte > ( UBound ( $aLog ) - 1 ) / $NbLignes Then $compte -= 1 _FileWriteFromArray2 ( $fichier, $aLog, 1, UBound ( $aLog ) - 1 ) GUIDelete ( $FenBase ) Fenetre ( ( UBound ( $aLog ) - 1 ) / $NbLignes ) EndFunc
Func FModifier () DesAct ( 1 ) If Modifier ( $compte, $fichier ) Then GUIDelete ( $FenBase ) Fenetre ( ( UBound ( $aLog ) - 1 ) / $NbLignes ) Else Desact () EndIf EndFunc
Func FNouveau () DesAct ( 1 ) ReDim $aLog [ UBound ( $aLog ) + $NbLignes ] ReDim $Radio [ UBound ( $Radio ) + 1 ] If Modifier ( ( ( UBound ( $aLog ) - 1 ) / $NbLignes ) , $fichier ) Then GUIDelete ( $FenBase ) Fenetre ( ( UBound ( $aLog ) - 1 ) / $NbLignes ) Else ReDim $aLog [ UBound ( $aLog ) - $NbLignes ] ReDim $Radio [ UBound ( $Radio ) - 1 ] EndIf DesAct () EndFunc
Func Modifier ( $compteBis, $fich ) $compteBis = $NbLignes * ( $compteBis - 1 ) + 1 Local $FenetreModif = GUICreate ( @scriptName, 200, $HLigne * 12 ) Local $LabelSurnom = GUICtrlCreateLabel ( "Veuillez entrer un" & @CRLF & " pseudonyme :", 0, 0 ) Local $LabelClef = GUICtrlCreateLabel ( @CRLF & "Clef de cyptage :", 120, 0 ) Local $LabelNDC = GUICtrlCreateLabel ( "Veuillez entrer le nom du compte Dofus :", 0, $Hligne * 4 ) Local $LabelMDP = GUICtrlCreateLabel ( "Veuillez entrer le mot de pass associé :", 0, $Hligne * 7 ) Local $InputPseudo = GUICtrlCreateInput ( $aLog [ $compteBis ] , 2, $Hligne * 2, 125 ) Local $InputClef = GUICtrlCreateInput ( "", 149, $Hligne * 2, 50) Local $InputNDC = GUICtrlCreateInput ( "", 2, $Hligne * 5, 196 ) Local $InputMDP = GUICtrlCreateInput ( "", 2, $Hligne * 8, 196 ) Local $BValide = GUICtrlCreateButton ( "Valider", 2, $Hligne * 10 ) Local $BAnnule = GUICtrlCreateButton ( "Annuler", 100, $Hligne * 10 ) GUISetState () While 1 $Mmsg = GUIGetMsg () Switch $Mmsg Case 0 ContinueLoop Case $GUI_EVENT_CLOSE GUIDelete ( $FenetreModif ) Return 0 Case $BAnnule GUIDelete ( $FenetreModif ) Return 0 Case $BValide If MsgBox ( 0x51, @scriptName & " - Modifications", "Attention, vous vous apprêtez à" & @CRLF & "modifier définitivement ces données." & @CRLF & "Êtes-vous sûr ?") = 2 Then Return 0 If GUICtrlRead ( $InputPseudo ) <> "" Then $aLog [ $compteBis ] = GUICtrlRead ( $InputPseudo, 0 ) _FileWriteToLine2 ( $fichier, $compteBis, $aLog [ $compteBis ], 1 ) If GUICtrlRead ( $InputNDC ) <> "" and GUICtrlRead ( $InputMDP ) <> "" Then If GUICtrlRead ( $InputClef ) = "" Then $aLog [ $compteBis + 1 ] = GUICtrlRead ( $InputNDC ) & "{TAB}" & GUICtrlRead ( $InputMDP ) Else $aLog [ $compteBis + 1 ] = _StringEncrypt ( 1, GUICtrlRead ( $InputNDC ), GUICtrlRead ( $InputClef ) ) & "{TAB}" & _StringEncrypt ( 1, GUICtrlRead ( $InputMDP ), GUICtrlRead ( $InputClef ) ) EndIf _FileWriteToLine2 ( $fichier, $compteBis + 1, $aLog [ $compteBis + 1], 1 ) EndIf EndIf GUIDelete ( $FenetreModif ) Return 1 EndSwitch WEnd EndFunc
Func FRadio () If $msg <> $Radio [ $compte ] Then GUICtrlSetPos ( $Radio [ $compte ], 5, 27 + ( ( $compte - 1 ) * $Ht ) ) While $msg <> $Radio [ $compte ] $compte += 1 If $compte > ( UBound ( $Radio ) - 1 ) Then $compte = 1 EndIf WEnd GUICtrlSetPos ( $Radio [ $compte ], 15, 30 + ( ( $compte - 1 ) * $Ht ) ) Else FLancer () EndIf EndFunc
Func FLancer () DesAct ( 1 ) Local $compteBis = ( $compte - 1 ) * $NbLignes + 1 Local $Clef = InputBox ( @scriptName & " - Code du compte " & $aLog [ $compteBis ], "Veuillez entrer la clef de " & $aLog [ $compteBis ] & " :", "", "°" ) Local $NDCMDP = StringSplit ( $aLog [ $compteBis + 1 ], "{TAB}", 1 )
If $Clef <> "" Then $NDCMDP [ 1 ] = _StringEncrypt ( 0, $NDCMDP [ 1 ], $Clef ) $NDCMDP [ 2 ] = _StringEncrypt ( 0, $NDCMDP [ 2 ], $Clef ) EndIf
If MsgBox ( 0x51, @scriptName, "Lancement de la fenêtre Dofus !" & @CRLF & "Cliquez sur Annuler pour fermer.", 2 ) <> 2 Then ShellExecute ( "Dofus.exe", "", $prgChemin ) Do Do sleep ( 20 ) Until MouseGetCursor () = 5 If WinActive ( "Dofus" ) Then MouseClick ( "left" ) Sleep ( 20 ) Until WinActive ( "Dofus" ) WinSetTitle ( "Dofus", "", "Dofus - " & $aLog [ $compteBis ] ) ;~ Send ( "^f" ) ;Mode "plein écran" Send ( $NDCMDP [ 1 ], 1 ) Send ( "{TAB}" ) Send ( $NDCMDP [ 2 ], 1 )
Do sleep ( 50 ) $cur = MouseGetPos () Until ( ( MouseGetCursor () = 0 ) And ( PixelGetColor ( $cur [ 0 ], $cur [ 1 ] ) = 0xFF9900 ) ) MouseClick ( "left" ) EndIf DesAct () EndFunc ;==========================Fonctions AutoIt 3 modifiées======================================== Func _FileWriteToLine2 ( $sFile, $iLine, $sText, $fOverWrite = 0 ) If Not FileExists ( $sFile ) Then FileWrite ( $sFile, @CRLF ) Local $filtxt = FileRead ( $sFile, FileGetSize ( $sFile ) ) $filtxt = StringSplit ( $filtxt, @CRLF, 1 ) If $filtxt [ 0 ] < $iLine Then ReDim $filtxt [ $iLine + 1 ] Local $fil = FileOpen ( $sFile, 2 ), $i For $i = 1 To UBound ( $filtxt ) - 1 If $i = $iLine Then If $fOverWrite = 1 Then If $sText <> @CRLF Then If $i < UBound ( $filtxt, 1 ) - 1 Then FileWrite ( $fil, $sText & @CRLF ) ElseIf $i = UBound ( $filtxt, 1 ) - 1 Then FileWrite ( $fil, $sText ) EndIf Else If $i < UBound ( $filtxt, 1 ) - 1 Then FileWrite ( $fil, $sText ) EndIf EndIf EndIf If $fOverWrite = 0 Then If $i < UBound ( $filtxt, 1 ) - 1 Then FileWrite ( $fil, $sText & @CRLF ) FileWrite ( $fil, $filtxt [ $i ] & @CRLF ) ElseIf $i = UBound ( $filtxt, 1 ) - 1 Then FileWrite ( $fil, $sText & @CRLF ) FileWrite ( $fil, $filtxt [ $i ] ) EndIf EndIf ElseIf $i < UBound ( $filtxt, 1 ) - 1 Then FileWrite ( $fil, $filtxt [ $i ] & @CRLF ) ElseIf $i = UBound ( $filtxt, 1 ) - 1 Then FileWrite ( $fil, $filtxt [ $i ] ) EndIf Next FileClose ( $fil ) Return 1 EndFunc
Func _FileWriteFromArray2 ( $File, $a_Array, $i_Base = 0, $i_UBound = -1 ) Local $hFile, $x If IsString ( $File ) Then $hFile = FileOpen ( $File, 2 ) Else $hFile = $File EndIf If $hFile = -1 Then Return SetError ( 1, 0, 0 )
If $i_UBound < 1 Then $i_UBound = UBound ( $a_Array )
$x = $i_Base Do FileWrite ( $hFile, $a_Array [ $x ] & @CRLF ) $x += 1 Until $x = $i_UBound FileWrite ( $hFile, $a_Array [ $i_UBound ] )
If IsString ( $File ) Then FileClose ( $hFile ) EndFunc
Func _FileReadToArray2 ( $sFilePath, ByRef $aArray ) Local $hFile $hFile = FileOpen ( $sFilePath, 0 ) If $hFile = -1 Then SetError ( 1 ) Return 0 EndIf $aArray = StringSplit ( StringStripCR ( FileRead ( $hFile, FileGetSize ( $sFilePath ) ) ), @CRLF ) FileClose ( $hFile ) Return 1 EndFunc
Voilà, 11742 caractères pour 326 lignes.. Pfiou, à la prochaine pour la 1_9 ! ^^ Et n'hésitez pas à me faire vos retours de commentaires. (Ha, j'informe : Maintenant, les données sont cryptées selon votre envie, et donc y'a de la sécurité. Largement plus que dans la version 1_5, en tout-cas ! ^^) Zamiza, toujours aussi déjantée !
Dernière édition par Zamiza le Ven 2 Jan - 21:05, édité 2 fois (Raison : Mise en spoiler du code source, pour ne pas déranger la lecture du thread. ^^) | |
| | | I-diable Champion de la Tchatch
Nombre de messages : 722 Age : 33 Date d'inscription : 19/08/2008
| Sujet: Re: DofusLog-v1_10 - 12/10/2009 Lun 29 Déc - 17:12 | |
| moi perso je comprend pas, et je trouve pas qu'on perd tellement de temps a introduire ses logs^^ | |
| | | miss-prespic Chevalier
Nombre de messages : 372 Age : 29 Date d'inscription : 05/04/2008
| Sujet: Re: DofusLog-v1_10 - 12/10/2009 Lun 29 Déc - 17:22 | |
| | |
| | | Zamiza Aspirant
Nombre de messages : 25 Age : 38 Date d'inscription : 12/08/2007
| Sujet: Re: DofusLog-v1_10 - 12/10/2009 Lun 29 Déc - 18:46 | |
| Même avec juste l'un des deux là, c'est pas mieux ? Version compilée : DofusLog 1_8.exe - 260.69 KB Version script (nécessite toujours auto-it 3 ^^) : DofusLog 1_8.au3 - 11.53 KB
Et sinon, tu perds ton temps une fois, mais tu l'économises à chaque fois que tu relances Dofus. ^^' (Mais je te laisse juger si c'est pas effectivement perdre plus de temps à cliquer sur chaque boutons du DofLog que de se co direct, vi.. :s )
Zamiza.
Dernière édition par Zamiza le Ven 2 Jan - 21:06, édité 1 fois (Raison : Mise à jour des versions dans ce post aussi. ^^) | |
| | | GuimSummoner Administrateur
Nombre de messages : 1679 Date d'inscription : 03/10/2005
| Sujet: Re: DofusLog-v1_10 - 12/10/2009 Mar 30 Déc - 0:54 | |
| Pour moi c'est toujours le souci de la confidentialité qui me gène | |
| | | Zamiza Aspirant
Nombre de messages : 25 Age : 38 Date d'inscription : 12/08/2007
| Sujet: Re: DofusLog-v1_10 - 12/10/2009 Mar 30 Déc - 1:14 | |
| Alors, ptite édition pour corriger un bug de caractères spéciaux, comme "!" ou "+". Si vous utilisiez DofusLog sans ces caractères, 'pouvez oublier. Mais sinon, il faut récupérer la nouvelle version (pas de soucis, totalement compatible avec le log créé par l'ancienne version). ^^ Sinon, pour les infos personnelles, elles sont maintenant à l'abris. Une clef de cryptage non récupérable (ainsi que non-modifiable, huhu ^^) est choisie par l'utilisateur pour crypter les données "sensibles". Impossible aussi de modifier les données en place.. Le seul moyen si vous oubliez votre login ou que vous avez fait une erreur, c'est d'écraser l'ancien. Personne ne peut donc accéder à vos infos, et (c'est pour ça que je met à dispo le source) vous pouvez le vérifier par vous-même. Après, mon but, c'est juste de rendre utile un truc qui me sert et qui me fait plaisir à partager. Que vous l'utilisiez ou pas, s'votre problème. ^^ Sur ce, bonne soirée, et bonne année si je repasse pas par ici avant après-demain ! Zamiza. | |
| | | miss-prespic Chevalier
Nombre de messages : 372 Age : 29 Date d'inscription : 05/04/2008
| Sujet: Re: DofusLog-v1_10 - 12/10/2009 Mar 30 Déc - 13:25 | |
| Sa marche pas T-T je veux l'utilisé et il me dit d'ouvrir log.txt et je sais pas comment il faut le crée | |
| | | jiub Conquérant Floodesque
Nombre de messages : 2312 Age : 33 Localisation : la rochelle (17) Date d'inscription : 10/04/2006
| Sujet: Re: DofusLog-v1_10 - 12/10/2009 Mar 30 Déc - 14:27 | |
| il le crée automatiquement si je me souvient bien miss | |
| | | Zamiza Aspirant
Nombre de messages : 25 Age : 38 Date d'inscription : 12/08/2007
| Sujet: Re: DofusLog-v1_10 - 12/10/2009 Mer 31 Déc - 13:32 | |
| Ha, hihi.
'suffit de faire "valider" et le fichier se crée tout seul. (vide, au début. ^^)
Par défaut, le script propose le nom "Log.txt", et le répertoire où le script est lancé. Mais vous pouvez le changer de nom, et choisir un autre répertoire ! Je vous conseille de mettre le script dans un ndroit où vous seul(e) avez accès, comme une clef USB, par exemple.
Voilà ! ^^ | |
| | | miss-prespic Chevalier
Nombre de messages : 372 Age : 29 Date d'inscription : 05/04/2008
| Sujet: Re: DofusLog-v1_10 - 12/10/2009 Mer 31 Déc - 13:50 | |
| Il me dit qu'il arrive pas a le trouver | |
| | | Bikku² Conquérant Floodesque
Nombre de messages : 1013 Age : 34 Date d'inscription : 24/07/2008
| Sujet: Re: DofusLog-v1_10 - 12/10/2009 Jeu 1 Jan - 0:55 | |
| Comme le dit Guim' si tout est dans un fichier, le premier qui penettre le fichier ( piratage ou autre ) à accès sans soucis à tout les mots de passes de tout les comptes ainsi que identifiants. C'est pourquoi j'éviterais de jouer avec le feu, et sa m'évitera aussi de venir pleurer après que je suis hack ( surtout que j'en serais en partie responsable pour avoir facilité au hackeur l'accès à mes infos ).
Donc je reste à la méthode traditionnelle ( qui ne prend pas tellement de temps, sauf dans le cas de surchage de connexions simultanées ).
Mais merci quand même | |
| | | jiub Conquérant Floodesque
Nombre de messages : 2312 Age : 33 Localisation : la rochelle (17) Date d'inscription : 10/04/2006
| Sujet: Re: DofusLog-v1_10 - 12/10/2009 Jeu 1 Jan - 14:55 | |
| les donnée son crypté bik zam a fait tout un systeme | |
| | | Zamiza Aspirant
Nombre de messages : 25 Age : 38 Date d'inscription : 12/08/2007
| Sujet: Re: DofusLog-v1_10 - 12/10/2009 Ven 2 Jan - 20:32 | |
| Pour les gens dubitatifs, et aussi pour rendre à César ce qui est à César : J'utilise une fonction "_StringEncrypt (x, [chaîne], [Clef])" livrée avec AutoIt 3. [chaîne] : C'est ce qui est à coder/décoder. Donc, dans un sens vos mots de pass qui seront à brouiller, et dans l'autre sens, les mots de pass brouillés à décoder. [Clef] : personnelle. Seule la personne qui l'a entrée la connaît. Il n'y a pas de vérification que c'est la "bonne" clef. C'est juste comme une serrure dans laquelle toutes les clefs rentreraient, mais une seule clef ouvrira la porte. x : quand ça vaut 1, ça veut dire que ça va "brouiller" la [chaîne] avec la valeur [Clef] (ça va "fermer la porte"). quand ça vaut 0, ça va essayer de "débrouiller" la [chaîne] avec la valeur [Clef]. (Attention ! Il n'y a aucun moyen de savoir si la [Clef] entrée est la "bonne". Sauf que vous vous en apercevrez très bien quand vous verrez un fatras de caractères étranges apparaître à la place de votre login. C'est juste que vous vous êtes planté de clef. ^^) Donc, mise en situation facile et vite-fait... J'ai choisit le login "0" (zéro), le mot de pass "0", la clef de cryptage "0" (et le surnom "1"). Voici le contenu du fichier Log.txt : - Citation :
- 1
9792{TAB}9792 Ensuite, le surnom "2", le login "Dofus" et le mot de pass "dofus" (sans la majuscule), avec la clef "zéro" : - Citation :
- 2
F2587EB6EF31CF3427AE{TAB}8B587EB6EF31CF3427AE Impossible de savoir la clef (si je vous la dit pas ^^), ni ce qui est caché sous ces quelques caractères. Rassurés ? ^^ Zamiza. | |
| | | kaffeine Champion de la Tchatch
Nombre de messages : 638 Age : 49 Localisation : Reunion Date d'inscription : 23/12/2006
| Sujet: Re: DofusLog-v1_10 - 12/10/2009 Sam 3 Jan - 23:57 | |
| Hiii zamiza.... ma chewie ca fait longtemps (ok ok je m'arrete la de peur de me faire moderer pour HS).
Bref effectivement le dofus log date de pas mal de temps, je l'ai jamais mis en pratique personnellement car j'en voyais pas l'utilité, mais je vais commencer a m'y interesser car marre de taper mes comptes sans cesse (et mon ordi est une veritable forteresse ceci dit). | |
| | | Zamiza Aspirant
Nombre de messages : 25 Age : 38 Date d'inscription : 12/08/2007
| Sujet: Re: DofusLog-v1_10 - 12/10/2009 Lun 5 Jan - 2:09 | |
| Version 1_8b ou 1_9 ? telle est la question... Votre avis sur les ajouts (certains, déjà préparés, mis en évidence par une astérisque "*") : *-> une case à cocher "Fermer le script quand le compte est connecté" -> une case à cocher "afficher les caractères" quand on entre un mot de pass ? (pour ou contre ce bouton ? faites votre choix ^^) (désactivée par défaut, ça affiche des "°" à la place des caractères) -> une option "mettre en plein écran" à la connexion ? -> un mode d'emploi ? -> une meilleure information de ce que le script attend que l'utilisateur fasse ? -> pouvoir fermer le script, même quand y'a eu un bug ? ^^ (Olol ouais, pas facile à faire, ça. J'vais voir s'que j'peux améliorer. ^^) -> arranger l'apparence graphique que certains trouvent "fade" ? (Si vous avez des idées, je prends.. Et évitez le contenu "Ankama-Games", pour lequel il faudrait rajouter une mention visible "tous droits réservés", etc)
Et sinon, en vrac : pouvoir changer de position un compte dans la liste (ahah, chaud. Mais pas infaisable), et aussi rajouter la possibilité de connecter plusieurs comptes en lançant chaque fenêtre Dofus l'une après l'autres.. Si j'intègre les 2 dernières idées (permutations et multi-co), je nommerai 1_9.
Et vos idées à vous ? Ce qui vous passe par la tête, hésitez pas. o/ (Genre un Lapino en ASCII qui fait coucouw avant que la fenêtre "Connecter Ok/Annuler" se ferme ?)
Zamiza, à l'écoute de ses (très nombreux) fans. *O* | |
| | | kaffeine Champion de la Tchatch
Nombre de messages : 638 Age : 49 Localisation : Reunion Date d'inscription : 23/12/2006
| Sujet: Re: DofusLog-v1_10 - 12/10/2009 Lun 5 Jan - 13:07 | |
| Alors voila ce que j'ai pu remarquer:
- Ne pas oublier de definr le chemin d'accés a Dofus_client.exe avec l'editeur ("C:\Program Files\Ankama Games\")
J'ai modifié cette ligne (231 je crois) ShellExecute ( "C:\Program Files\Ankama Games\Dofus_client.exe", "", $prgChemin )
- Obligation d'avoir JRE (Java Runtime Environement) installé sur sa machine (http://java.com/fr/download/manual.jsp)
- Point Noir : Obligé de forcer la fermeture du script
Alors par contre Zami, ca me lance bien la fenetre dofus, mais par contre ca ne me rentre aucun logs. Je suis obligé de taper mon compte et mdp manuellement. Normal ou pas ca ?
Sinon pour repondre a Bikku, tu as en partie raison et en partie tort. C'est a dire que je connais bon nombre d'entre vous qui mettez vos comptes/mdp, ou les comptes/mdp de vos potes sur un fichier .txt sur votre ordi.
Pour pouvoir y acceder il faudra un trojan installé sur ta becanne. Tout le monde peut en choper un si on ne sait pas faire attention.
Ceci dit si tu en as un sur ton ordi, rien qu'en tapant tes ID et MDP sur la fenetre Dofus c'est deja trop tard pour toi ^^.
Perso je prefere le logiciel de zami car justement on a pas a taper nos comptes dans la fenetre dofus, du coup on evite les enregistreurs de frappe. De plus dans la v 1.9 nous avons la possibilité de personnaliser la clé de cryptage.
Pour moi c'est beaucoup plus sécurisant ^^. | |
| | | Zamiza Aspirant
Nombre de messages : 25 Age : 38 Date d'inscription : 12/08/2007
| Sujet: Re: DofusLog-v1_10 - 12/10/2009 Mar 6 Jan - 0:48 | |
| (Hey, Kaffou, c'est la 1_8 là. La 1_9 arrive dans quelques mois encore, j'pense. ^^ ~Mais sinon, oui pour tout le reste. :p) -> Dofus_client.exe Amairde, il reste encore des gens pour utiliser ce nom ? X_x Renomme ce truc en "Dofus.exe" (le Dofus_client), et le script fonctionnera nickel. Sinon, voici la modif que tu peux faire : ShellExecute ( "Dofus_client.exe", "", $prgChemin )(Juste le bête "_client" à rajouter dans un sens, OU à enlever dans l'autre. ~Je te conseille plutôt d'enlever cette particule du Dofus.exe, perso c'est ce que j'ai fait. ^^) -> Il faut le JRE à jour J'ai le JRE à jour, donc je ne savais pas qu'il le fallait, merci de le signaler.. (Même si je ne sais pas pourquoi ! ) -> Le bouton "fermer le script après la connexion de ce compte" est déjà prévu. Je peux sortir la version 1_8b-0 en vitesse si tu veux, mais à part le bouton, elle n'apporte pas grand-chose. (voire rien. :p) -> ça ne rentre pas les logins automatiquement Normal : il faut passer sa souris sur le champs "Nom de compte" pour que le script envoie le login/pass, puis passer sa souris sur le bouton orange "OK" pour que le script considère la connexion comme "complète", et retourne à la normale. (C'est une des choses que je veux améliorer pour la 1_8b-finale, ou la 1_9. ^^) Et sinon, je rappelle ma motivation de base : "Vu que j'ai plein de comptes, et la flemme de tous les mémoriser, je les stocke dans un fichier texte. Dès ce moment, autant que ça me serve à quelque-chose". C'est parti de là, le DofusLog. Et au début, les infos étaient en clair, ça posait soucis. :p Maintenant, c'est crypté de manière efficace, donc.. ^^ Merci pour ces retours, Kaffou. Zamiza. | |
| | | Contenu sponsorisé
| Sujet: Re: DofusLog-v1_10 - 12/10/2009 | |
| |
| | | | DofusLog-v1_10 - 12/10/2009 | |
|
| Permission de ce forum: | Vous ne pouvez pas répondre aux sujets dans ce forum
| |
| |
| |