IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Scripts/Batch Discussion :

Automation d'une application en script .bat [Batch]


Sujet :

Scripts/Batch

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre du Club Avatar de ksalton
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Juin 2016
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2016
    Messages : 7
    Par défaut Automation d'une application en script .bat
    Bonjour à tous,

    J'aimerais automatiser l'exécution d'une application (Glary Utilities)

    j'en suis à ce stade :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    @echo off
    start "" "C:\Program Files (x86)\Glary Utilities 5\OneClickMaintenance.exe
    
    exit
    La fenêtre "OneClickMaintenance" s'ouvre bien.
    Mon problème c'est que je dois cliquer sur un bouton "Analyser" pour que la maintenance s'exécute.

    J'ai donc essayé avec la commande :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    MouseClick ( "button" [, x, y [, clicks [, speed ]]] )
    Soit mes coordonnées x, y sont fausses, soit il manque une donnée, car j'en suis au même point.
    j'avoue que pour trouver les coordonnées x, y de mon pointeur j'ai un peu de mal.

    Quelqu'un peut-il m'aider ?
    Merci

  2. #2
    Expert confirmé

    Homme Profil pro
    Responsable déploiement (SCCM, InTune, GPO)
    Inscrit en
    Juillet 2014
    Messages
    3 218
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Responsable déploiement (SCCM, InTune, GPO)
    Secteur : Transports

    Informations forums :
    Inscription : Juillet 2014
    Messages : 3 218
    Par défaut
    Bonjour, c'est quoi 'MouseClick'.

    Je te conseil plutôt d'utiliser autoit qui est fait pour ça.

  3. #3
    Responsable 2D/3D/Jeux


    Avatar de LittleWhite
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mai 2008
    Messages
    27 121
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Mai 2008
    Messages : 27 121
    Billets dans le blog
    148
    Par défaut
    Bonjour,

    Vous pouvez aussi voir si l'application que vous lancez peut prendre des arguments dans la ligne de commande. Dans un tel, il devrait être possible de lancer l'action directement.
    Pour obtenir une hypothétique liste des options, essayez :
    votre_programme /?
    Vous souhaitez participer à la rubrique 2D/3D/Jeux ? Contactez-moi

    Ma page sur DVP
    Mon Portfolio

    Qui connaît l'erreur, connaît la solution.

  4. #4
    Membre du Club Avatar de ksalton
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Juin 2016
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2016
    Messages : 7
    Par défaut
    Bonjour et merci de votre réponse.

    Citation Envoyé par ericlm128 Voir le message
    c'est quoi 'MouseClick'.
    "MouseClick" c'est pour dire dans le fichier .bat que :
    - tu fais un clic gauche ou droite
    - grâce aux coordonnées tu peux programmer un clic à un point précis de ton écran.
    Ce qui permet de valider les choix lorsqu'une application démarre.
    Mais bon, je n'ai pas réussi avec cette méthode, je vais tester la votre.

  5. #5
    Membre du Club Avatar de ksalton
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Juin 2016
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2016
    Messages : 7
    Par défaut Test avec Autoit
    Voici mon script (au format .au3):

    Code au3 : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    ShellExecute("C:\Program Files (x86)\Glary Utilities 5\OneClickMaintenance.exe") 
    
    WinWaitActive("Analyser")
    
    If WinWaitActive("Analyser") Then
    Send ("{SPACE}")
    Else 
    MsgBox(0,"Problem !!!")
    EndIf
    TrayTip("Analyser", 1000)

    Cependant, je reste encore bloquer sur la fenêtre où il faut cliquer (ou faire espace) sur "Analyser"...

    Nom : cap1.PNG
Affichages : 1198
Taille : 74,3 Ko
    Nom : cap2.PNG
Affichages : 1173
Taille : 47,9 Ko

    Ensuite, il me restera à automatiser la tâche : "Réparer".

    Nom : cap3.PNG
Affichages : 1175
Taille : 124,9 Ko

    Je ne suis pas au bout de mes peines, surtout que je ne connais vraiment rien en script, mais je m'y intéresse.

  6. #6
    Expert confirmé

    Homme Profil pro
    Responsable déploiement (SCCM, InTune, GPO)
    Inscrit en
    Juillet 2014
    Messages
    3 218
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Responsable déploiement (SCCM, InTune, GPO)
    Secteur : Transports

    Informations forums :
    Inscription : Juillet 2014
    Messages : 3 218
    Par défaut
    C'est bien déjà on sens que tu est motivé .

    Tu as installé autoit, tu doit avoir un outil dans le "menu démarer -> ...-> AutoIt Window Info (x86)"
    Il te permettra de cibler exactement ce que tu veux 'le bouton analyser", et trouver le bon "controlID" correspondant.

    Il n'y a plus qu'a utiliser "ControlClick", tu as un exemple sur le lien donné.
    https://www.autoitscript.com/autoit3...ntrolClick.htm

  7. #7
    Membre émérite Avatar de devilsnake88
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Janvier 2013
    Messages
    453
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Technicien maintenance
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Janvier 2013
    Messages : 453
    Par défaut
    Bonjour,

    Ayant un petit peu tripoté Autoit, je me permet de poster mon script que je viens de faire pour voir si j'étais rouillé ^^
    Code bat : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    #requireadmin
     
    ; Affiche en bas à droite un message informant du début de la tâche
    TrayTip("Maintenance - Glary Utilities 5","Début de la tâche de maintenance de Glary Utilities 5", 3000)
    Run("C:\Program Files (x86)\Glary Utilities 5\OneClickMaintenance.exe")
     
    WinWait("Maintenance 1-Clic", "Nettoyage")
    WinActivate("Maintenance 1-Clic", "Nettoyage")
    ; On coche les options qui ne sont pas sélectionnées
    ControlCommand("Maintenance 1-Clic", "Nettoyage", "Button6", "Check", "")
    ControlCommand("Maintenance 1-Clic", "Nettoyage", "Button8", "Check", "")
    ControlCommand("Maintenance 1-Clic", "Nettoyage", "Button10", "Check", "")
    ControlCommand("Maintenance 1-Clic", "Nettoyage", "Button12", "Check", "")
    ControlCommand("Maintenance 1-Clic", "Nettoyage", "Button14", "Check", "")
    ControlCommand("Maintenance 1-Clic", "Nettoyage", "Button16", "Check", "")
    ControlCommand("Maintenance 1-Clic", "Nettoyage", "Button18", "Check", "")
    ; On clique sur "Analyse"
    If ControlCommand("Maintenance 1-Clic", "Nettoyage", "[ID:1000]", "IsVisible", "") Then ControlClick("Maintenance 1-Clic", "Nettoyage", "[CLASS:Button; INSTANCE:4]")
    ; On clique sur "Réparer"
    If ControlCommand("Maintenance 1-Clic", "Réparer", "[ID:1001]", "IsVisible", "") Then ControlClick("Maintenance 1-Clic", "Réparer", "[CLASS:Button; INSTANCE:2]")
     
    ; Affiche en bas à droite un message informant de la fin de la tâche
    TrayTip("Maintenance - Glary Utilities 5","Fin de la tâche de maintenance de Glary Utilities 5", 3000)

    Pour info tu n'as pas besoin d'installer Autoit, il te faut juste trois outils:
    Au3Info_x64.exe pour récupérer les informations de la fenêtre
    AutoIt3_x64.exe pour exécuter ton .AU3
    et les Includes nécessaires.

    En espérant avoir été utile.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Fermer une application depuis un bat
    Par funkyjul dans le forum Scripts/Batch
    Réponses: 2
    Dernier message: 07/10/2011, 15h17
  2. Script .bat pour lancer ou non une application
    Par alex_m94 dans le forum Windows Serveur
    Réponses: 7
    Dernier message: 02/07/2007, 11h01
  3. Réponses: 20
    Dernier message: 29/03/2007, 20h26
  4. comment faire appel d'une application java dans un script shell?
    Par moradbe dans le forum Shell et commandes GNU
    Réponses: 3
    Dernier message: 01/02/2007, 19h55
  5. Accès à une application ouverte (OLE Automation ?)
    Par PascalB dans le forum C++Builder
    Réponses: 6
    Dernier message: 17/06/2002, 14h39

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo