begin process at 2008 09 06 09:05:33
1 237 666 membres
63 nouveaux aujourd'hui
14 313 membres club

Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum.
Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

L'HEURE ET LA DATE C'EST AVEC GETSYSTEMTIME !


Information sur la source

Description

Salut
Voici un tt petit exemple que j'ai codé en asm qui montre l'utilité de l'api GetSystemTime et sa structure SystemTime . Si vous voulez comprendre ce petit code ,vous trouverez un tutorial tout complet ici :

www.myRevo.cjb.net

Dans la session Coding :)

Enjoy
DarK_m00n
Pour les "Membres Club", vous pouvez télécharger directement un fichier contenu dans le zip sans télécharger le zip en entier !

Télécharger le zip

  • signaler à un administrateur
    Commentaire de BruNews le 26/04/2005 14:30:10 administrateur CS

    Salut,

    invoke wsprintf,addr lpOut,addr lpFmt2,str$(eax),str$(ebx),str$(edi)

    t'arrives à appeler cela 'codé en asm', moi non.

  • signaler à un administrateur
    Commentaire de x5man le 26/04/2005 18:53:16

    au fait il faut inclure Macros/macros.asm pour ke le macro str$ marche ( entre ns check in this help C:\masm32\help\MASMLIB )

    Et si le prob persiste :

    .data
    Format1 db "%X",0

    .code
    invoke wsprintf  ,addr BufferEdi ,addr Format1,edi
    Meme truc pour ebx et eax.
    et puis
    Push offset BufferEdi
    Push offset BufferEbx
    Push offset BufferEax
    Push offset lpFmt2
    Push Offset lpOut
    Call wsprintf

    Ca va surment marcher , a noté que tu peux pas : Push str$(eax) car ce pti macro a ete optimisé pour les 'ADDR'

    Seya

  • signaler à un administrateur
    Commentaire de BruNews le 27/04/2005 17:38:43 administrateur CS

    A noter aussi que wsprintf utilise la convention d'appel C cause que le nbr d'arguments est indéterminé, il est donc de la responsabilité de l'appelant de dépiler les params, chose que je ne vois pas faite ici.

  • signaler à un administrateur
    Commentaire de x5man le 28/04/2005 13:25:01

    Zut ! Oui c'est vrai j'ai oublié. Ainsi il faut juste ajouter cette petite piece de code apres l'Api wsprintf :
                           ADD     ESP,14
    Si 'est ce que tu voudrais dire bien sur !

    ++

  • signaler à un administrateur
    Commentaire de BruNews le 29/04/2005 11:52:23 administrateur CS

    Certainement NON, 14 ne sera jamais multiple de 4 et chaque param sur un prog 32 bits est de 4 octets.
    Pour ton exemple avec 5 PUSH, il faudra donc:
    add esp, 20

  • signaler à un administrateur
    Commentaire de x5man le 29/04/2005 13:55:30

    Merci BryNews
    Si tu connais une documentation useful about ce sujet je serais reconnaissant merci encore

  • signaler à un administrateur
    Commentaire de x5man le 29/04/2005 14:17:40

    Le 14 etait en Hexa :)
            14h == 20d

  • signaler à un administrateur
    Commentaire de IDCat le 11/01/2007 09:45:10

    Je préfère utiliser GetLocalTime à GetSystemTime car si votre programme est utulisé dans un autre pays que la France, et par exemple aux USA il y aura un décallage au niveau horaire.
    GetLocalTime prend en compte cette possibilité.

  • signaler à un administrateur
    Commentaire de IDCat le 11/01/2007 09:51:38

    Time proc near
    invoke GetSystemTime,offset lpSystemTime
    movzx eax, lpSystemTime.wHour
    movsx ebx, lpSystemTime.wMinute
    movsx edi, lpSystemTime.wSecond
    invoke wsprintf,addr lpOut,addr lpFmt,str$(eax),str$(ebx),str$(edi)
    invoke SetDlgItemText,hWnd,1002,addr lpOut
    ret

    Time endp

    Peut être avantageusement remplacé par un appel à "GetTimeFormat". Voir doc sur : http://msdn2.microsoft.com/en-us/library/ms776299.aspx

    Avec cette fonction plus besoin de wsprintf et cela a aussi l'avantage d'internationaliser la procédure.

Ajouter un commentaire

Pub



Appels d'offres

CalendriCode

Septembre 2008
LMMJVSD
1234567
891011121314
15161718192021
22232425262728
2930     

Boutique

Boutique de goodies CodeS-SourceS