Connaitre le contenu d'une textbox

Résolu
bubulle22 Messages postés 8 Date d'inscription samedi 19 février 2005 Statut Membre Dernière intervention 24 avril 2008 - 22 avril 2008 à 01:07
bubulle22 Messages postés 8 Date d'inscription samedi 19 février 2005 Statut Membre Dernière intervention 24 avril 2008 - 24 avril 2008 à 23:29
Bonjour, j'ai déjà posé ma question dans la section débutant, mais je crois que je recevrais plus d'aide ici


Bonjour à tous,

Je suis débutant en ASM, et j'ai regardé quelques codes en essayant de comprendre.

Voila, je crée une texte box avec: 



invoke EditSl,ADDR adrTxt,50,20,100,20,hWin,700




mov hEdit1, eax







Je voudrais savoir ou est stocké le contenu de cette TextBox, est-ce que c'est dans hEdit1?? Parce que j'essaye de comparer la valeur de cette textbox avec la valeur du mot de passe que jai choisi pour le programme, et cela ne fonctionne pas.

Merci à l'avance pour votre aide!

Bubu!

12 réponses

BruNews Messages postés 21040 Date d'inscription jeudi 23 janvier 2003 Statut Modérateur Dernière intervention 21 août 2019
24 avril 2008 à 00:38
Disons que EDX et ECX sont aux adresses de 2 chaines:

mov al, [edx]
cmp [ecx], al

boucler ainsi en incrémentant ECX et EDX.

si ce sont des chaines, arrêter au 1er 0 rencontré dans l'une des 2 chaines.

ciao...
BruNews, MVP VC++
3
edfed Messages postés 69 Date d'inscription mercredi 12 décembre 2007 Statut Membre Dernière intervention 22 mars 2010 1
22 avril 2008 à 02:48
normalement, la valeur retournée par une fonction de se type est un pointeur. donc, pour acceder au texte, il faut lire non pas la valeur retournée, mais la chaine pointée par la valeur.

sinon, bein, j'en sais rien, vu que c'est un peu ( beaucoups ) selon la librairie utlisée, au bon vouloir du dev de libs.

en gros, c'est comme ça:

string ' reuzaoip',0

mov esi,string
mov al,[esi]  <--- al sera egal à 'r'
mov al,[esi+1] <---- al sera egal à 'e'
add esi,4
mov al,[esi] <---- al sera egal à 'a'

voilà.
0
BruNews Messages postés 21040 Date d'inscription jeudi 23 janvier 2003 Statut Modérateur Dernière intervention 21 août 2019
22 avril 2008 à 10:32
On utilise justement Windows car il n'est pas sujet au délire d'un dev quelconque.

Le retour HWND de création d'une fenêtre (comme tout autre handle) n'est qu'un identifiant unique, absolument pas "pointeur".

ciao...
BruNews, MVP VC++
0
edfed Messages postés 69 Date d'inscription mercredi 12 décembre 2007 Statut Membre Dernière intervention 22 mars 2010 1
22 avril 2008 à 13:33
NON MAIS WINDOWS, C'EST PAS POUR TROLLER, MAIS C'EST COMPLETEMENT POURRIS.
vau mieu ne pas dev que dev pour windows.
sans rire!
fau pas s'etonner si vous vous retrouvez tous avec des DRM dans le c** apres ça.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
BruNews Messages postés 21040 Date d'inscription jeudi 23 janvier 2003 Statut Modérateur Dernière intervention 21 août 2019
22 avril 2008 à 13:59
Ma réponse ne corrigeait que les errata de ta réponse.
Les habituels délires qu'on lit un peu partout (mais ailleurs) sur le net n'ont rien à faire ici. Il y en a (et j'en suis) qui ont besoin de bosser pour vivre, donc pour les clients et il se trouve qu'ils sont sous Windows.

ciao...
BruNews, MVP VC++
0
bubulle22 Messages postés 8 Date d'inscription samedi 19 février 2005 Statut Membre Dernière intervention 24 avril 2008
22 avril 2008 à 22:48
O.o Désolé je ne comprend pas bien ton exemple. Ou est stocké cette valeur exactement?? Ou est le pointeur??

Désolé, mais je suis comme je l'ai dit un débutant très débutant, et je suis plutot habitué aux languages plus commums comme le C, alors si vous pouviez m'expliquer le plus clairement possible.

Merci à l'avance! Et merci pour vos réponses
0
bubulle22 Messages postés 8 Date d'inscription samedi 19 février 2005 Statut Membre Dernière intervention 24 avril 2008
22 avril 2008 à 22:50
PS. Le fichier que j'ai utilisé est fourni avec MASM dans la section example.
0
BruNews Messages postés 21040 Date d'inscription jeudi 23 janvier 2003 Statut Modérateur Dernière intervention 21 août 2019
23 avril 2008 à 02:19
Le contenu de la textbox est dans un buffer interne à la textbox, il en va ainsi de tous tableaux d'octets.
Va voir EM_GETHANDLE dans la MSDN.

ciao...
BruNews, MVP VC++
0
bubulle22 Messages postés 8 Date d'inscription samedi 19 février 2005 Statut Membre Dernière intervention 24 avril 2008
23 avril 2008 à 03:47
Bonjour

Merci beaucoup, ca a marché

J'aurais une autre question.

Lorsque je fais:


mov eax, offset password1


mov edx, offset password2


cmp eax, edx

Je devrais obtenir que eax vaut edx, parce que dans les .data, j'ai mis la même valeur a password1 et password2, pourquoi ca me dit que ce n'est pas la meme valeur.
Merci
0
BruNews Messages postés 21040 Date d'inscription jeudi 23 janvier 2003 Statut Modérateur Dernière intervention 21 août 2019
23 avril 2008 à 09:50
Là ce sont les bases qui te manquent, un bon bouquin s'imposerait mais le prob c'est qu'il n'y en a pas, il faut chercher par soi même en fouillant le code des autres.


offset tableau = segment + décalage dans segment
donc c'est une adresse alors normal que soit différent.

ciao...
BruNews, MVP VC++
0
bubulle22 Messages postés 8 Date d'inscription samedi 19 février 2005 Statut Membre Dernière intervention 24 avril 2008
23 avril 2008 à 22:35
O.o Alors comment fait-on pour comparer le contenu et non pas l'adresse?

Merci encore
0
bubulle22 Messages postés 8 Date d'inscription samedi 19 février 2005 Statut Membre Dernière intervention 24 avril 2008
24 avril 2008 à 23:29
Resalut!

Merci pour tout! C'est très instructif. Tu as l'air de vraiment t'y connaitre.

Je voulais savoir si tu ne connaissais pas un site pour apprendre les bases de l'asm.

Merci encore pour tout
0
Rejoignez-nous