web-dev-qa-db-fra.com

Automatisez le clic de souris dans les fenêtres avec un fichier script / batch

Tout d'abord, je voudrais souligner qu'il s'agit d'une question plutôt étrange et que je ne sais même pas si stackoverflow convient à cela ...

Quoi qu'il en soit, existe-t-il un moyen d'écrire un fichier de commandes ou un autre script qui automatisera un clic de souris là où se trouve le pointeur de la souris au moment de l'exécution du script? Mon objectif principal est le suivant:

  1. Script de lancement
  2. Vérifiez si l'heure est comprise entre 00h00 et 05h00.
  3. Si ce n'est pas le cas, continuez à exécuter la vérification toutes les 15 minutes.
  4. Si c'est le cas, vérifiez s'il y a une connexion Internet sur la machine actuelle
  5. S'il y a une connexion Internet, continuez à exécuter la vérification du script toutes les 15 minutes.
  6. S'il n'y a PAS de connexion Internet, automatisez un clic gauche de la souris là où le pointeur de la souris pointe vers le moment.
  7. Continuez à faire les mêmes vérifications que ci-dessus toutes les 15 minutes

Encore une fois, je ne sais même pas si c'est possible, je pensais juste tenter ma chance. Merci d'avance!

15
user818700

J'utiliserais AutoIt . À mon humble avis, autoit est plus approprié pour exécuter des scripts où une icône systray peut être préférable à une fenêtre de console. AutoIt peut vérifier l'heure , cingler quelque chose , automatiser un clic de souris , et probablement tout ce dont vous avez besoin .

12
rojo

Juste au cas où une pauvre âme tomberait sur ce jour, en utilisant AutoIt que @rojo a suggéré ci-dessus - Voici le script que j'ai écrit qui accomplit ce dont j'ai besoin:

; Initiate Script
Main()

Func Main()
    ; Infinite loop
    While 0 < 1
        If CheckTime() == true Then
            If CheckInternetConnection() == true Then
                ; Internet Connection is true
                ; So no worries
            Else
                ; Internet Connection is false
                ; Perform mouse click
                MouseClick("left")
            EndIf       
        EndIf
        ; Sleep for 15 minutes
        Sleep(60000 * 15)
    WEnd
EndFunc

; The function checks if the current time is between 00:00 and 05:00
Func CheckTime()
    If @Hour >= 00 AND @Hour <= 05 Then
        Return true
    Else
        Return false
    EndIf
EndFunc

; The function checks if currently is a internet connection
Func CheckInternetConnection()
    Local $Connected = false
    $ping = Ping("www.google.com")
    If $ping > 0 Then
        $Connected = true
    EndIf
    Return $Connected
EndFunc

Et voilà, enregistrez simplement le code dans un fichier avec une extension de fichier .au3, double-cliquez et profitez-en.

15
user818700

nircmd est capable de faire quelques trucs basiques de souris. Vérifiez mouse.bat - classe C # auto-compilée (le compilateur c # est installé par défaut à partir de tout depuis Vista et au-dessus) capable de commander la souris depuis la ligne de commande (également assez basique mais peut faire un peu plus que nircmd). avec mouse.bat -help vous pouvez voir l'aide et quelques exemples d'actions.

2
npocmaka