begin process at 2010 03 21 13:51:09
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

Divers

 > AUTOCLIC - AUTOMATISATION DE WINDOWS

AUTOCLIC - AUTOMATISATION DE WINDOWS


 Information sur la source

Note :
10 / 10 - par 4 personnes
10,00 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10
Catégorie :Divers Classé sous :clic, touche, tray, automatique, script Niveau :Initié Date de création :25/07/2007 Date de mise à jour :22/10/2009 22:32:32 Vu / téléchargé :14 571 / 1 155

Auteur : bipcpp

Ecrire un message privé
Site perso
Commentaire sur cette source (27)
Ajouter un commentaire et/ou une note

 Description

Cliquez pour voir la capture en taille normale
Ce programme permet d'automatiser le fonctionnement d'un programme selon un script.
Il bouge la souris, clique et envoie des touches à votre place.

Fonctions abordées :
- connection directe à une DLL
- tray icon (création et changement dynamique)
- menu sur tray icon
- programme tournant en tâche de fond
- déplacement et clic de la souris
- simulation de touches clavier
- langage de script

Il faut copier une dll (autoclicdll.dll, contenue dans le zip avec les sources) qui permet de lancer et d'arréter le script par les touches Shift-F11 et Shift-F12.

Source

  • Liste des commandes et des touches :
  • COMMANDS : (not case sensitive)
  • -----------
  • REM text : remark, ignore the line
  • STOP : stop the script
  • REPEAT x : repeat the script x time (default = never end)
  • MOUSEMOVE x y : move the mouse pointer to (x,y) position of the screen
  • MOUSEMOVEREL x y : move the mouse pointer, relative to the actual position
  • MOUSEMOVEWIN x y : move the mouse pointer to (x,y) position of the current window
  • MOUSECLIC x : clic left mouse button and wait x milliseconds (default is zero)
  • MOUSECLICRIGHT x : clic right mouse button and wait x milliseconds (default is zero)
  • WAIT x : wait x milli-seconds (x can be a variable)
  • KEYSEND text x : send "text" to the keyboard (see below for special keys) and wait x milliseconds (default is zero)
  • WINDOWALLFIND text : find all windows that begins with "text" (done only one time)
  • WINDOWNEXT : select next window (found by WINDOWALLFIND)
  • WINDOWACTIVATE : activate current window (after WINDOWNEXT)
  • IMAGELOAD name x : load one bmp picture from "name" (ie c:\image.bmp) and save it with number x (done only one time)
  • LABEL name : define a label (use by GOTO command)
  • GOTO name : jump to the label
  • INCLUDE text : include another script, text is the name of the script (ie c:\test2.txt), maximum 5 level of include
  • DECLARE var type value : declare the variable "var" with type (num=numeric, string=string) initialize with "value",
  • if value is empty the variable is initialize with 0 or "", (done only one time)
  • SET var x : set the value of variable "var" to "x"
  • ADD var x : add "x" to numeric variable "var"
  • RANDOM var x y : set the value of variable "var" to a random value between x and y (include)
  • "var" must be a numeric variable
  • IFEQGOTO var value label: if variable "var" equal "value" then goto "label"
  • IFLTGOTO var value label: if variable "var" is lower than "value" then goto "label"
  • IFGTGOTO var value label: if variable "var" is greater than "value" then goto "label"
  • IFERRORGOTO label : if error then goto "label" (see commands that generate error)
  • "x" or "y" can be an integer variable or a number
  • "value" can be a string, a variable or a number
  • SPECIAL KEYS : (case sensitive)
  • --------------
  • %% = %
  • %_ or %SPACE% = space
  • %= or %ENTER% = return (enter)
  • %s or %SHIFT% = shift
  • %c or %CONTROL% = control
  • %a or %ALT% = alt
  • %e or %ESC% = esc
  • %! or %DELETE% = del
  • %u or %UP% = up arrow
  • %d or %DOWN% = down arrow
  • %l or %LEFT% = left arrow
  • %r or %RIGHT% = right arrow
  • %b or %BACKSPACE% = backspace
  • %t or %TAB% = tab
  • %p or %PAGEUP% = prior (page up)
  • %n or %PAGEDOWN% = next (page down)
  • %* or %END% = end
  • %h or %HOME% = home
  • %1 to %0 or %F1% to %F0% = F1 to F10
  • %, or %F11% = F11
  • %; or %F12% = F12
  • EXEMPLE DE SCRIPT:
  • -------------------
  • mousemove 585 465
  • mouseclic
  • wait 100
  • mousemove 710 505
  • mouseclic
  • wait 1500
  • keysend %a%l
  • wait 2000
Liste des commandes et des touches :

COMMANDS : (not case sensitive)
-----------
REM text		: remark, ignore the line
STOP			: stop the script
REPEAT x		: repeat the script x time (default = never end)
MOUSEMOVE x y		: move the mouse pointer to (x,y) position of the screen
MOUSEMOVEREL x y	: move the mouse pointer, relative to the actual position
MOUSEMOVEWIN x y	: move the mouse pointer to (x,y) position of the current window
MOUSECLIC x		: clic left mouse button and wait x milliseconds (default is zero)
MOUSECLICRIGHT x	: clic right mouse button and wait x milliseconds (default is zero)
WAIT x			: wait x milli-seconds (x can be a variable)
KEYSEND text x		: send "text" to the keyboard (see below for special keys) and wait x milliseconds (default is zero)
WINDOWALLFIND text	: find all windows that begins with "text" (done only one time)
WINDOWNEXT		: select next window (found by WINDOWALLFIND)
WINDOWACTIVATE		: activate current window (after WINDOWNEXT)
IMAGELOAD name x	: load one bmp picture from "name" (ie c:\image.bmp) and save it with number x (done only one time)
LABEL name		: define a label (use by GOTO command)
GOTO name		: jump to the label
INCLUDE text		: include another script, text is the name of the script (ie c:\test2.txt), maximum 5 level of include

DECLARE var type value	: declare the variable "var" with type (num=numeric, string=string) initialize with "value",
			  if value is empty the variable is initialize with 0 or "", (done only one time)
SET var x		: set the value of variable "var" to "x"
ADD var x		: add "x" to numeric variable "var"
RANDOM var x y		: set the value of variable "var" to a random value between x and y (include)
			  "var" must be a numeric variable
IFEQGOTO var value label: if variable "var" equal "value" then goto "label"
IFLTGOTO var value label: if variable "var" is lower than "value" then goto "label"
IFGTGOTO var value label: if variable "var" is greater than "value" then goto "label"
IFERRORGOTO label	: if error then goto "label" (see commands that generate error)


"x" or "y" can be an integer variable or a number
"value" can be a string, a variable or a number


SPECIAL KEYS : (case sensitive)
--------------
%% = %
%_ or %SPACE% = space
%= or %ENTER% = return (enter)
%s or %SHIFT% = shift
%c or %CONTROL% = control
%a or %ALT% = alt
%e or %ESC% = esc
%! or %DELETE% = del
%u or %UP% = up arrow
%d or %DOWN% = down arrow
%l or %LEFT% = left arrow
%r or %RIGHT% = right arrow
%b or %BACKSPACE% = backspace
%t or %TAB% = tab
%p or %PAGEUP% = prior (page up)
%n or %PAGEDOWN% = next (page down)
%* or %END% = end
%h or %HOME% = home
%1 to %0 or %F1% to %F0% = F1 to F10
%, or %F11% = F11
%; or %F12% = F12



EXEMPLE DE SCRIPT:
-------------------
mousemove 585 465
mouseclic
wait 100
mousemove 710 505
mouseclic
wait 1500
keysend %a%l
wait 2000

 Conclusion

Le script boucle sans fin. A la dernière ligne, on recommence la première ligne.

Une icone (tray icon) à coté de l'horloge permet de charger un script, de le lancer, de l'arréter, de le modifier et de quitter.
Le script démarre deux secondes après le lancement.
Le script s'arrête lorsque la souris est sur la zone des icônes windows (tray icon) à coté de l'horloge.
(ou lorsqu'on l'arrête !)

Un exécutable est présent dans le zip (ex_).

 Fichier Zip

Les Membres Club peuvent télécharger directement un fichier contenu dans le zip sans télécharger le zip en entier !

Télécharger le zip


 Historique

25 juillet 2007 23:14:22 :
ortographe
25 juillet 2007 23:17:28 :
exemple de script
26 juillet 2007 19:03:13 :
rien
22 octobre 2009 22:29:32 :
version 2.0 : ------------- - add NOLOG command - add NOSECUREZONE command - add wait parameter in MOUSECLIC and MOUSECLICRIGHT command - add wait parameter in KEYSEND command - add "space key" in KEYSEND command - add special words in keysend (ie : %ENTER% for enter key) see readme file - add INCLUDE command - no limit the size of the script (unlimited number of line) - add REPEAT command - run script with SHIFT-F11 and stop with SHIFT-F12 (need autoclicdll.dll) - add STOP command - add log file : "autoclic.log" - display current script line when error - add IMAGELOAD command - add LABEL command - add GOTO command - icon tray display bug solve - ask for a script if none when start script - add DECLARE command for variable declaration - add SET command - WAIT command accept variable as parameter - add ADD command - add RANDOM command - add IFEQGOTO command - add IFLTGOTO command - add IFGTGOTO command
22 octobre 2009 22:30:43 :
Ajout image
22 octobre 2009 22:32:32 :
Il ne veux pas pendre mon image :-(

 Sources du même auteur

Source avec Zip PLANSCAN : SCANNEUR DE FICHIER ET CONFIGURATION PC
Source avec Zip Source avec une capture [ODBC] BIPFILE - FONCTIONS D'ACCÈS AUX BASES DE DONNÉES
Source avec Zip Source avec une capture BIPCPP - FENÊTRE,DIALOG,MENU INTER-ACTIFS
Source avec Zip BIPNUM : CLASSE POUR NOMBRE MONÉTAIRE
Source avec Zip CLASSE DATE C++ AVEC FORMAT ET VALEUR NULLE

 Sources de la même categorie

Source avec Zip LECTURE DXF, par pinatl
Source avec Zip Source .NET (Dotnet) GESTION DE RECETTES par DVDou
Source avec Zip Source avec une capture Source .NET (Dotnet) SYSTEMBACKUP.VB par DVDou
Source avec Zip Source avec une capture DESKTOP WALLPAPER V 5.0 par shaeks
Source avec Zip Source avec une capture Source .NET (Dotnet) SPACE - UN SPACE MAC POUR WINDOWS par vbnino

 Sources en rapport avec celle ci

Source avec Zip PUSH TO THE CLIC (V.2) : JEU OÙ L'ON DOIT FAIRE UN MAXIMUM D... par Vampire Lord
Source avec Zip Source avec une capture ARRÊT AUTOMATIQUE DE WINDOWS. par patarotalexandre
Source avec Zip INTERACTION C/LUA par Toadstool
Source avec Zip SIMULER UN ALT TAB AUTOMATIQUE par Nabot_Milka
Source avec Zip PARSER QUI SE VEUT GÉNÉRIQUE par dominion

Commentaires et avis

Commentaire de dletozeun le 26/07/2007 17:01:41

Sympa cette source, elle marche bien sur xp. Je trouve ca amusant ^^

Commentaire de dletozeun le 26/07/2007 17:32:33

tiens je viens d'avoir une idée qui pourrait etre interresante quand on ecrit un script. Ca serait de rajouter une fonctionnalité qui permet de visualiser les coordonnées de la souris, parce que c'est pas simple de savoir les coordonnée du point ou on veux cliquer...
Peut etre que tu pourrait mettre ca en place en créant un petit editeur pour tes scripts, ou carrement faire un programme a part qui affiche simplement les coordonnées de la souris pour aider a l'ecriture.

Le must ca serait de faire une ecriture de script automatique, en demandant a l'utilisateur d'effectuer les actions souhaités pendant que ton programme les enregistre en ecrivant le script lui meme! ^^

Commentaire de Mr.X le 27/07/2007 18:14:28

Très simple, mais fallait y penser. Pas mal.

Commentaire de bipcpp le 28/07/2007 09:56:35

Oui, une fonction de création automatique de script serait sympa.
En attendant, il vaut mieux utiliser au maximum l'envoi de touches.

Commentaire de ordiman85 le 30/07/2007 17:52:43

10/10 rien que pour l'idée ! bravo !

Commentaire de flashman22 le 24/11/2007 04:27:40 10/10

Merci pour le soft

Commentaire de syrus2 le 03/03/2008 17:46:44

Je viens d'essayé ton prg, sans résultat
Est-ce possible de expliquer un peu plus
avec un exmple.
Merci d'avace

Commentaire de bipcpp le 03/03/2008 20:43:27

@ SYRUS2

Ce programme ne fait qu'interpréter un script.
Donc tu créé un script, exemple :
MOUSEMOVE 200 200
WAIT 1000
MOUSEMOVE 500 500
WAIT 1000

Tu sauvegardes dans un fichier texte, tu "loade" ce script et tu le "starte".
Ta souris va se déplacer toutes les secondes.

(c'est beau .... :-) )

Commentaire de syrus2 le 03/03/2008 23:29:46

Oui j'ai exécuté avec ton exemple comme tu dis c'est beau.
Une question i j'ai un script en perle ou vb ou en autres langage
il peut le faire?

Merci d'avance

Commentaire de bipcpp le 04/03/2008 07:52:50

Autoclic (comme chaque programme) ne sait gérer que ses propres scripts.
Il n'y a que VB qui sache faire du VB !

>> j'ai un script en perle
(c'est beau ... :-) )

Commentaire de MoraXium le 05/07/2008 16:28:30

Je suis un gros noob et y'a pas moyen de le faire fonctionner :( Un tuto pour noob c'est possible :$

Commentaire de finelarme le 12/07/2008 13:59:47

Possible d'obtenir des délais en milliseconde ? (je t'ai envoyé un mail bipcpp)

Commentaire de finelarme le 12/07/2008 14:37:40

Bipcpp saurais-tu faire une boucle avec des timers de précision du type QueryPerformanceCounter (comme pour les jeux vidéos) pour éviter d'utiliser le timer windows est ainsi avoir des délais plus rapides ?

Commentaire de bipcpp le 12/07/2008 19:37:17

@FINELARME :

Une ligne de script est éxécutée toutes les "int iTimer" milli-secondes.
Cette valeur est fixée à 50ms par défaut, mais tu peux la réduire.

Fait attention à ce que la durée d'une ligne de script ne dure pas plus que la variable "iTimer", sinon le comportement du programme risque d'être bizarre.

Je pense que l'intérêt d'utiliser un timer windows, est que cela ne consomme pas de ressource CPU pendant l'attente (au contraire d'une boucle avec QueryPerformanceCounter).

Ce serait sympa de me dire pour quelle raison vous utilisez le programme (sur le web, dans des jeux, ...).

Commentaire de finelarme le 12/07/2008 19:43:26

Ok je vais plancher là-dessus, merci.

Le pourquoi de ma demande : je prépare un dessin à ma copine, lancement de l'autoclic : ouverture de paint, clic grosseur du point, clic couleur, clic sur la feuille blanche pour faire une forme et dessiner ; si c'est trop lent ça devient.. :(.

Bref, je te tiens au courant.

Commentaire de nos1886 le 30/07/2009 10:25:59

Bonjour,

Excellent soft, j'ai juste une question, comment faut il écrire le script pour qu'il envoie cette combinaison de touches maintenues : Atl + ESPACE + N (agrandi la fenêtre active, ceci me permet d'être sur de l'emplacement des boutons de la page que je charge).Merci d'avance

Commentaire de bipcpp le 07/08/2009 22:49:27

@nos1886 :

Bonjour,
Bonne remarque, le caractère espace n'est pas géré !
Il faut alors ruser, par exemple -> ALT + F + flèche gauche + N

keysend %af
keysend %l
keysend n

Cela fonctionne avec Wordpad et autre, mais pas avec Firefox (il doit gérer les menus différement)

NB: l'interêt de faire plusieurs keysend est de laisser le temps au PC d'interpréter les touches reçues. Cela dépend de la vitesse du PC. Sinon il faut intercaler des wait.

Commentaire de bipcpp le 07/08/2009 22:52:55

NB2: l'envoi de touches ALT, CONTROL et/ou SHIFT n'est fait que lors du prochain caractère.

Par exemple : ALT+SHIFT+F1 = keysend %a%s%1

Commentaire de nos1886 le 10/08/2009 11:25:45

Merci pour ta réponse, il est donc impossible d'agrandir une fenêtre internet explorer?

Commentaire de mawy33 le 19/08/2009 12:04:13 10/10

Bonjour tous !!! :D
serait il possible d'avoir de l'aide svp ?? ça serait pour :
- enlever la limite de 100 lignes par script (il m'en faudrait 10 fois plus environ ^^ )
- enlever la fonction "arrêt d'urgence" (qui met le script en pause lorsque la souris passe sur l'icône de l'autoclic)
.
Merci beaucoup d'avance
.
PS : je peux travailler sous linux ou windows peu importe
.
.
.
@bigcpp : je t'ai envoyé un MP un peu plus détaillé
          j'utilise ton soft pour controler mon pc à distance
              un autoclic démarré qui boucle (va chercher un mail (envoyé depuis mon téléphone) et fait exécuter le script par un autre autoclic
              l'autre autoclic qui exécute les ordres du mail
              et ça recommence toutes les 5 minutes ...

Commentaire de bipcpp le 20/08/2009 07:43:01

@NOS1886 : je vais corriger ce "bug" dans une prochaine version

Commentaire de bipcpp le 20/08/2009 07:46:32

@MAWY33:

- nb de lignes : il faut simplement modifier la constante "SCRIPT_MAX_LINE" dans le fichier "autoclic.cpp" et recompiler

- "arrêt d'urgence" : à voir dans une prochaine version

Commentaire de mawy33 le 20/08/2009 08:59:31

oui j'ai vu cette constante déjà et j me suis dit que c'était ça qu'il fallait changer ...
mais mtn que tu m'as dit que j pouvais le faire (je savais pas si les histoires de copyrights et tout ... ) je sais pas comment recompiler tout ça ... je dois vraiment être un plot la dsl --'
je vais reessayer et chercher ...

Commentaire de mawy33 le 20/08/2009 09:02:21

dsl du double post ...
ce qui me serais le plus utile en fait c'est de savoir comment enlever cet "arret d'urgence" car en serrant j'arrive à faire rentrer mes script dans les 100 lignes (ça devient illisible mais ça marche ... ) mais par contre j'arrive pas à contourner ton A.U

Commentaire de mawy33 le 21/08/2009 10:26:46

j y ai travaillé hier et j'ai réussi tout seul en fait
j me suis pas pris la tête et j'ai réduit la "secure zone" à la taille de 0 pixel sur 0 pixel (ligne 1265 a peu près pour ceux que ça intéresse )
merci beaucoup pour ce soft il m'est très très utiles mtn ;)

Commentaire de arnauldl le 11/12/2009 11:04:38

Bonjour,
Sympa cet interpréteur !!
J'ai quelques questions, ou suggestion d'améliorations :
- Lorsqu'on a déclarée une variable, est-ce qu'il y a moyen de se servir de cette variable dans la commande keysend ?
- Y-a-t-il moyen de lancer un script via une ligne de commande (genre batch windows ?) et de lui passer des paramètres ?

Merci d'avance !

Commentaire de mawy33 le 11/12/2009 23:29:34

nan c'est impossible avec ce qui est déjà programmé
mais vas y fait toi plaisir c'est pas très difficile à coder ;)

 Ajouter un commentaire


Discussions en rapport avec ce code source dans le forum

PROBLEME EN resource Script (.rs) (visual c++) [ par elboras ] PROBLEME EN resource Script (.rs) Salut, j'ai un problême avec VISUAL C++ Je créé un nouveau fichié et je clique sur TOOLS , APP STUDIO . Ensuite quan Comment détourner la touche entrée ? [ par Manson ] 'lut,Comment détourner la touche entrée d'une zone de texte en Visual C ?Thanx envoie de mail kand clic sur une application .... [ par gijo ] je debute en c++ et j aimerais creer un programme permettant de recevoir un mail au moment où quelqu' un clic sur une application déterminé .... j esp [BC++]getch() kbhit() Y EN A PAS UNE AUTRE?? [ par idk ] J'ai un probleme! existe t'il une fonction qui dit si une touche du clavier et pressé et en meme tmps qui prenne le code de cette touche?Un peu pres c detection automatique de peripherique [ par bidule ] J'ai un lecteur de carte puce connecté au port COM de mon pc.Comment faire pour que mon programme C (ou C++) detecte automatiquement l'insertion de l detection automatique de peripherique [ par bidule ] J'ai un lecteur de carte puce connecté au port COM de mon pc.Comment faire pour que mon programme C (ou C++) detecte automatiquement l'insertion de l Intercepter la touche ESC [ par mindark ] BonjourVoila, j'ai un programme qui execute une boucle d'environ 5 mins. Et je voudrais que cette boucle soit executee plusieurs fois, jusqu'a ce que gestion du clavier [ par Myts ] SalutJe programme sous TC++ (turbo c++) sous dos.Et j'ai un probleme concernant la gestion du clavier.Mon jeux, prochainement sur ce site, doit effect clavier : La touche Windows et la touche alt [ par bily ] Vegeta :-)Salut,je voudrais savoir comment a l'aide d'un boutton bloquer et debloquer la touche wndows en esperant que son raccourci "ctrl+echap" soie IMPORTANT CLAVIER WINDOWS BLOQUER [ par bily ] Vegeta :-)Salut,je voudrais savoir comment a l'aide d'un boutton bloquer et debloquer la touche wndows en esperant que son raccourci "ctrl+echap" soie


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Mars 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728
293031    

Consulter la suite du CalendriCode

 
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 : 1,061 sec (3)

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