begin process at 2012 05 25 06:58:45
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive Assembleur

 > 

Archives

 > 

Autres asm

 > 

décompter une variable sous fasmw


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

décompter une variable sous fasmw

mercredi 8 décembre 2004 à 21:20:56 | décompter une variable sous fasmw

palyer

bonjour.

j ai commencé la programmation sous fasmw156 récement et j aurai besoin d aide pour un probleme tout bete :

je cherche a pouvoir decrementer une variable pour créer une ou plusieurs boucles de temporisation pour un petit programme

je sai qu il faut que j utilise ecx puisque c est le compteur mais je ne connai pas sa syntaxe...

dès fois que ca interresse quelqu un , le but est de faire clignoter la barre des taches de windows -_-"


format PE GUI 4.0
include '%fasminc%\win32a.inc'

boucle:
invoke FindWindow,_fen,0
invoke ShowWindow,eax,SW_HIDE
invoke FindWindow,_fen,0 ;ne sachant pas envoyer eax dans une variable , je repete.....
invoke ShowWindow,eax,SW_SHOWNORMAL

cmp ecx,<??????>
jne boucle
jmp exit

exit:
invoke ExitProcess,0

_fen db 'shell_traywnd',0

data import

library kernel32,'KERNEL32.DLL',\
user32,'USER32.DLL',\

import kernel32,\
ExitProcess,'ExitProcess'

import user32,\
MessageBox,'MessageBoxA',\
FindWindow,'FindWindowA',\
ShowWindow,'ShowWindow'

end data



si quelqu un peut m aider ca doit pas etre grand chose mais c est primordial pour le fonctionnement de ce programme innutile et le fonctionnement de futurs programmes moins innutiles ....

merci d avance

</palyer>
mercredi 8 décembre 2004 à 23:23:56 | Re : décompter une variable sous fasmw

BruNews

Administrateur CodeS-SourceS
mais non dans un tel exemple tu n'utiliseras pas ECX car il est ecrase entre chaque appel API.

Windows preserve tous les registres hormis EAX, ECX et EDX.

ciao...
BruNews, MVP VC++
jeudi 9 décembre 2004 à 12:52:54 | Re : décompter une variable sous fasmw

palyer

arf..
j avai remarqué pour eax mais je pensai que comme ecx est un compteur il aurai pu etre utilisé ici...

donc il faudrai introduire une variable a decompter pour la boucle que je veu realiser..


par contre si je voulais utiliser ecx pour une tempo entre
invoke FindWindow,_fen,0
invoke ShowWindow,eax,SW_HIDE

et
invoke FindWindow,_fen,0
invoke ShowWindow,eax,SW_SHOWNORMAL

il ne serai pas écrasé non ?

merci du tuyau, je vais voir cette aprem quelqu un qui devrai pouvoir repondre a ma question mais si vous pouviez quand meme m aider....

a+
</palyer>
jeudi 9 décembre 2004 à 12:58:49 | Re : décompter une variable sous fasmw

BruNews

Administrateur CodeS-SourceS
mets un DWORD en memoire .data en ce cas:

compteur DD 100


boucle:
.....
....
dec compteur
jnz boucle


ciao...
BruNews, MVP VC++
jeudi 9 décembre 2004 à 13:17:00 | Re : décompter une variable sous fasmw

palyer

comme j utilise fasmw , je n ai pas de .data , tout est dans le meme fichier (je ne sais pas si j ai bien compri ton post : je debute)

j ai essayé :

dec compteur
jne boucle

_compteur dw 100,0

dec compteur
jne boucle

_compteur dd 100,0


mais je recupere "invalid operand" comme erreur a la compilation

j abuse ou je peu demander encore un peu d aide ?
merci quoi qu il en soit !

</palyer>
jeudi 9 décembre 2004 à 13:37:49 | Re : décompter une variable sous fasmw

BruNews

Administrateur CodeS-SourceS
_compteur dd 100,0 ??? pourquoi une virgule ?

excuse mais j'utilise MASM32 avec pure syntaxe des manuels Intel, alors...

ciao...
BruNews, MVP VC++
jeudi 9 décembre 2004 à 14:44:59 | Re : décompter une variable sous fasmw

palyer

Réponse acceptée !
",0" pour signifier la fin de la ligne sous fasm...
en fait c était totallement innutile ^^"

donc apres aide de prof le code qui marche :

format PE GUI 4.0
include '%fasminc%\win32a.inc'

invoke FindWindow,_fen,0
mov ebx,eax
boucle:
invoke ShowWindow,ebx,SW_HIDE
invoke ShowWindow,ebx,SW_SHOWNORMAL
dec [_compteur]
jnz boucle

jmp exit

exit:
invoke ExitProcess,0

_fen db 'shell_traywnd',0
_compteur dd 100

data import

library kernel32,'KERNEL32.DLL',\
user32,'USER32.DLL'

import kernel32,\
ExitProcess,'ExitProcess'

import user32,\
FindWindow,'FindWindowA',\
ShowWindow,'ShowWindow'

end data


avec l utilisation du ebx pour retenir le eax de findwindow
merci au passage pour [quote]Windows preserve tous les registres hormis EAX, ECX et EDX.[/quote]

voila
a+


</palyer>


Cette discussion est classée dans : variable, showwindow, findwindow, fen, invoke


Répondre à ce message

Sujets en rapport avec ce message

Affichage caractere par caractere d'une variable DT [ par Eclipz ] BonjourVoila, un souci en MASM, j'ai une variable nommée Resultat de type DT et je voudrais afficher, caractere par caractere, son résultat... le prob Access violation et ecriture de variable [ par anthraxx ] J'ai une question qui me traKsse avec MASM:quand je declare un tampon comme cela:buffer db 100 dup(0)et dans le code, j'essaye d'ecrire dedans, avec u COULEUR DE TEXTE LORS DU PASSAGE DE LA SOURIS [ par knetus12 ] salut a tousj'ai un probleme pour faire changer la couleur d'un texte quand la souris passe dessus ca na marche pas pourquoi ??? .ELSEIF uMsg == call ou invoke? [ par vecchio56 ] Je commence en asm et ja me rend compte qu'il y a 2 facons d'appeler une fonction: call et invokeQuelle différence? Modif zone de saisie [ par noel70 ] Bonjonr a tous.Je vous explique ce que je voudrais faire.Je voudrais changer les caracteristiques du zones de saisies par l'intermédiaire d'un bouton. declaration [ par noel70 ] Bonjour a tous.Voila, lorsqu'on veut déclarer une variable de type réelle, on utilise cette syntaxe..dataNom_de_la_varaible dq 0.0J'aimerais sav Déplacer pointeur [ par DeAtHCrAsH ] Je dispose d'une variable défini comme cela :var1 dd 256 dup(?)A l'interieur j'y stocke des adresses mémoiresAinsi pour les afficher ensuite je fais : Aidez moi à traduire une petite fonction assembleur en C (API Windows) [ par skirby ] Bonjour à tous, J'essaye désespérément de traduire une fonction ASM en C. Le but de cette fonction est de pouvoir utiliser une ressource compilé dans Variable [ par RM50Man ] phrase_debut            DB   10, 13, "Lancement du test...", 10, 13, 0pkoi il y a 10 puis 13 ??????????,,RM50man Une mémoire "read" [ par msteve ] Bonsoir, Je suis débutant et j'ai recopié un programme test. Je parviens à l'assembler, puis à créer un .exe ; quend je lance l'exe j'obtiens la boîte


Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,686 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales