| | | DofusLog-v1_10 - 12/10/2009 | |
| |
| Auteur | Message |
|---|
Zamiza Aspirant

Nombre de messages: 25 Age: 23 Date d'inscription: 12/08/2007
 | Sujet: DofusLog-v1_10 - 12/10/2009 Lun 28 Avr - 21: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 <File.au3> #include <GUIConstants.au3> ;~ #include <Array.au3> ;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 - 12:42, édité 11 fois (Raison : Version 1_10. ^^) |
|  | | GuimSummoner Administrateur


Nombre de messages: 1679 Date d'inscription: 03/10/2005
 | |  | | loulesacrifieur Défenseur du forum

Nombre de messages: 220 Age: 47 Localisation: dans mon petit coin douillé Date d'inscription: 20/03/2008
 | Sujet: Re: DofusLog-v1_10 - 12/10/2009 Mar 29 Avr - 10: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: 2285 Age: 19 Localisation: la rochelle (17) Date d'inscription: 10/04/2006
 | Sujet: Re: DofusLog-v1_10 - 12/10/2009 Mar 29 Avr - 11:11 | |
| moi je pense que je vais essayé s'toujours intéréssent de savoir comme sa marche, merci zamiza  _________________ l'amitié c'est l'amour sans ailes  |
|  | | Invité Invité
 | Sujet: Re: DofusLog-v1_10 - 12/10/2009 Mar 29 Avr - 15: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: 364 Age: 18 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 - 19: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 ^^ _________________ Mes passions dans la vie ??? : Dofus, Battlestar Galactica, Fullmetal Alchemist ......Hayden Panettière ^^ http://sarei.skyrock.com/So Say We All ! " We're Cylons, and we have been from the start..."  Get the Force be with you ! |
|  | | Zamiza Aspirant

Nombre de messages: 25 Age: 23 Date d'inscription: 12/08/2007
 | Sujet: Re: DofusLog-v1_10 - 12/10/2009 Jeu 1 Mai - 3: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: 560 Age: 16 Date d'inscription: 22/03/2008
 | Sujet: Re: DofusLog-v1_10 - 12/10/2009 Ven 2 Mai - 8: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: 23 Date d'inscription: 12/08/2007
 | Sujet: Re: DofusLog-v1_10 - 12/10/2009 Lun 29 Déc - 14: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 <GUIConstants.au3> #include <String.au3> ;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 - 19: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: 702 Age: 19 Date d'inscription: 19/08/2008
 | Sujet: Re: DofusLog-v1_10 - 12/10/2009 Lun 29 Déc - 15: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: 355 Age: 15 Date d'inscription: 05/04/2008
 | Sujet: Re: DofusLog-v1_10 - 12/10/2009 Lun 29 Déc - 15:22 | |
| |
|  | | Zamiza Aspirant

Nombre de messages: 25 Age: 23 Date d'inscription: 12/08/2007
 | Sujet: Re: DofusLog-v1_10 - 12/10/2009 Lun 29 Déc - 16: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 KBEt 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 - 19: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
 | |  | | Zamiza Aspirant

Nombre de messages: 25 Age: 23 Date d'inscription: 12/08/2007
 | Sujet: Re: DofusLog-v1_10 - 12/10/2009 Lun 29 Déc - 23: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: 355 Age: 15 Date d'inscription: 05/04/2008
 | Sujet: Re: DofusLog-v1_10 - 12/10/2009 Mar 30 Déc - 11: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 |
|  | | | | DofusLog-v1_10 - 12/10/2009 | |
|
| Page 1 sur 3 | Aller à la page : 1, 2, 3  |
| | Permission de ce forum: | Vous ne pouvez pas répondre aux sujets dans ce forum
| |
| |
| |