Page 1 sur 1

Créé un programme robot résidant wow...c'est un bon défi...

Publié : dim. 29/août/2004 22:17
par mycleo
#heaven Allo tout le monde.Je suit nouveau sur ce site et j'ai la version demo depuis une semaine.Je trouve ce furum tres intéressant.Je suis programmeur en basic depuis 20 ans et j'ai écris au dessus de 10,000 programmes mais en pure j'ai du mal a m'y retrouver.
j'ai toujours programmé avec un programme robot pour faire les taches répétitive et avec les années je l'ai perdu et y m'a rendu de fiers services.
j'aimerais faire ce programme en pure mais j'aurais besoin d'aide.Définition du programme : Ce programme reste en mémoire.Quand on veux faire un tache répétitive on le lui apprend. 1 on aapuis sur une cle genre ALT+r et on fait une tache et quand on a terminé on apuis sur une touche pour dire que c'est la fin genre ALT+END.
Quand on veux refaire la tache a répéter on n'a qu'a faire ALT+r et le programme refait les commande.Si quelqu'un as des idées pour faire ce programme il est bienvenu...

Publié : dim. 29/août/2004 22:28
par nico
Tu veux créer un programme permettant de faire des macros pour des tâches répétitives si j'ai bien compris.

Ce serait pour quelle genre de tâche pour cibler par exemple?

:)

Publié : dim. 29/août/2004 23:16
par Backup
il me semble que les macro son prevu par fred dans une version future de pure !! quelqu'un peut confirmer ?? 8O

Publié : lun. 30/août/2004 0:07
par Le Soldat Inconnu
je penche plutot pour enregistrer les fait et geste de la souris et du clavier ;)
peut-être qu'en étant plus précis :roll:

> dobro :
les macros dans pure, c'est pour figer un code.
par exemple un code compliqué qui va toujours donné la même valeur, si on le transforme en macro au lieu d'une procedure, on aura pas le code mais simplement le résulatat dans l'exe, si tu voit ce que je veux dire (enfin c'est ce que j'ai compris d'après ce que Fred a dit)

Publié : mar. 31/août/2004 10:32
par Oliv
@Mycleo : pour voirs quels évènements claviers et souris ont entran de se dérouler je ne sait pas, mas pour les reproduire c'est pas dur :
Pour la souris : http://purebasic.hmt-forum.com/viewtopic.php?t=1247
Pour le clavier :

Code : Tout sélectionner

Procedure Touche(Option.l)
  keybd_event_(Option,0,0,0) ; Simule l'appui sur une touche
  keybd_event_(Option,0,#KEYEVENTF_KEYUP,0) ; simule le relachement d'une touche
  Delay(60)
EndProcedure

Touche(#VK_a)
Un petit code que j'ai fait pour ma mère car je ne voulais pas tout le temps lui redire comment aller voir ses emails : (il a besoin des fonctions pour simuler la souris qui sont dans le post que je t'ai donné)

Code : Tout sélectionner

  Enumeration
    #D_Bas ; Bouton de droite 
    #D_Haut
    #D_Click
    #D_DoubleClick
    
    #G_Bas ; Bouton de gauche 
    #G_Haut
    #G_Click
    #G_DoubleClick
    
    #M_Bas ; Bouton du milieu 
    #M_Haut
    #M_Click
    #M_DoubleClick
  EndEnumeration

Procedure touche(Option.l)
  keybd_event_(Option,0,0,0)
  keybd_event_(Option,0,#KEYEVENTF_KEYUP,0)
  Delay(60)
EndProcedure

MouseMoveEx(173,749,10,10,1)
MouseClick(#G_Click)
Delay(2000)
MouseMoveEx(183,101,10,10,1)
MouseClick(#G_Click)
For i = 0 To 2
  touche(#VK_w)
Next i
touche(#VK_Decimal)
touche(#VK_w)
touche(#VK_a)
touche(#VK_n)
touche(#VK_a)
touche(#VK_d)
touche(#VK_o)
touche(#VK_o)
touche(#VK_Decimal)
touche(#VK_f)
touche(#VK_r)
touche(#VK_return)
MouseMoveEx(955,169,10,10,1)
Delay(3000)
MouseClick(#G_Click)
MouseMoveEx(530,349,10,10,1)
Delay(3000)
MouseClick(#G_Click)
touche(#VK_v)
touche(#VK_g)
touche(#VK_i)
touche(#VK_e)
touche(#VK_g)
touche(#VK_t)
touche(#VK_p)
touche(#VK_m)
touche(#VK_q)
MouseMoveEx(542,369,10,10,1)
MouseClick(#G_Click)
touche(#VK_k)
touche(#VK_h)
touche(#VK_z)
touche(#VK_r)
touche(#VK_o)
touche(#VK_i)
MouseMoveEx(676,403,10,10,1)
MouseClick(#G_Click)
Delay(5000)
MouseMoveEx(364,173,10,10,1)
MouseClick(#G_Click)
End
@Le Soldat Inconnu : Si en code est tout le temps pareil et que seul le résultat est inclut dans l'EXE, à quoi est-ce que ça sert de mettre du code et non directement le résultat ?

Publié : sam. 11/sept./2004 13:32
par ZapMan
Oliv a écrit : @Le Soldat Inconnu : Si en code est tout le temps pareil et que seul le résultat est inclut dans l'EXE, à quoi est-ce que ça sert de mettre du code et non directement le résultat ?
Ce n'est pas exactement à cette définition que correspond le terme de macro en langage C.
Une macro, c'est exatcement comme une procédure, sauf qu'au moment de la compilation, le compilateur ne met pas un appel à la procédure mais il recopie intégralement la procédure à la place de l'appel. Résultat : un code un peu plus lourd mais qui peut être plus rapide.
A ne pas confondre avec UN macro qui est un poisson mal orthographié.

Publié : sam. 11/sept./2004 14:24
par Backup
A ne pas confondre avec UN macro qui est un poisson mal orthographié.
pour moi un macro c'est un Gros !!
le contraire de Micro qui veut dire petit dans chez pus quel Baragoin!! :D

Publié : sam. 11/sept./2004 18:57
par Oliv
merci :D , pour confondre avec lepoisson, ne t'inquiètes pas, ça n'arrive qu'a Dobro (voir Pierre) ce genrede choses

Re: Créé un programme robot résidant wow...c'est un bon défi

Publié : lun. 15/nov./2004 7:57
par LOULOU25
mycleo a écrit :#heaven Allo tout le monde.Je suit nouveau sur ce site et j'ai la version demo depuis une semaine.Je trouve ce furum tres intéressant.Je suis programmeur en basic depuis 20 ans et j'ai écris au dessus de 10,000 programmes mais en pure j'ai du mal a m'y retrouver.
j'ai toujours programmé avec un programme robot pour faire les taches répétitive et avec les années je l'ai perdu et y m'a rendu de fiers services.
j'aimerais faire ce programme en pure mais j'aurais besoin d'aide.Définition du programme : Ce programme reste en mémoire.Quand on veux faire un tache répétitive on le lui apprend. 1 on aapuis sur une cle genre ALT+r et on fait une tache et quand on a terminé on apuis sur une touche pour dire que c'est la fin genre ALT+END.
Quand on veux refaire la tache a répéter on n'a qu'a faire ALT+r et le programme refait les commande.Si quelqu'un as des idées pour faire ce programme il est bienvenu...
Va voir sur le site http://www.hiddensoft.com , tu trouveras un language qui s'interface avec Pure Basic via une dll auotitx.dll et qui te permettra de programmer tout ce que tu veux et trés facilement