[C] Basculer sur une autre fenêtre alors que Firefox est en mode "plein écran"

Aide et conseils concernant AutoIt et ses outils.
Règles du forum
.
Répondre
JoCool
Niveau 1
Niveau 1
Messages : 2
Enregistré le : lun. 26 juil. 2021 19:51
Status : Hors ligne

[C] Basculer sur une autre fenêtre alors que Firefox est en mode "plein écran"

#1

Message par JoCool »

Bonjour tout le monde,

J'avais utilisé Autoit il y a très longtemps et je m'y replonge après des années. Et du coup, je suis largué.
J"ai besoin d'aide pour le problème suivant :

J'utilise Autoit pour automatiser la capture de plusieurs pages web via l'outil de capture d'écran de Win 10. Ce dernier est piloté par Autoit afin de capturer une zone précise, qui est ensuite sauvegardée en appelant l'outil Paint.
Sauf que Firefox est utilisé en mode plein écran (la page à capturer est grande), et lorsque je veux basculer sur Paint pour faire mon copier-coller et sauvegarder l'image, Autoit ne parvient pas à basculer sur Paint parce que Firefox est en mode plein écran.

Pour info, j'ai essayé 2 solutions :
  • Ne fonctionne pas :

    Code : Tout sélectionner

    WinActivate("[CLASS:MSPaintApp]")
  • Je ne sais pas comment trouver l'application voulue avec Alt + Tab :

    Code : Tout sélectionner

    	Send("{ALTDOWN}{TAB}")
    	Send("{ALTUP}")
J'ai le PID du processus puisque c'est mon script qui lance Paint, mais là encore, je ne sais pas comment l'utiliser pour donner la main à Paint alors que Firefox est en mode plein écran, et surtout sauvegarder la capture d'écran puisque j'utilise un simple CTRL + V puis CTRL + S pour sauvegarder l'image.
Voici mon code pour la sauvegarde de l'image :

Code : Tout sélectionner

	; CTRL V pour copier le presse paier
	Send("{CTRLDOWN}v{CTRLUP}")
	; les Sleep qui suivent servent a laisser le temps a chaque operation de s'executer
	Sleep(1000)
	; Enregistrer sous via CTRL + S
	Send("{CTRLDOWN}s{CTRLUP}")
	Sleep(1000)
	; Nom du fichier en parametre de la fonction
	Send("F:\" & $nomFichier & ".png" & "{ENTER}")
	Sleep(1000)
Auriez-vous une solution à proposer au noob que je suis ? :lol:

Merci.
Modifié en dernier par JoCool le jeu. 29 juil. 2021 22:26, modifié 1 fois.
Avatar du membre
mikell
Spammer !
Spammer !
Messages : 6292
Enregistré le : dim. 29 mai 2011 17:32
Localisation : Deep Cévennes
Status : Hors ligne

Re: [..] Basculer sur une autre fenêtre alors que Firefox est en mode "plein écran"  

#2

Message par mikell »

Fichier d'aide => UDFs => fonctions ScreenCapture
Firefox peut être laissé plein écran (touche F11) et le script exécuté avec une hotkey spécifique
C'est quand même plus propre (et moins aléatoire) que de jongler entre plusieurs fenêtres à coups de Send Image
" L'échec est le fondement de la réussite. " (Lao-Tseu )
" Plus ça rate, plus on a de chances que ça marche " (les Shadoks )
JoCool
Niveau 1
Niveau 1
Messages : 2
Enregistré le : lun. 26 juil. 2021 19:51
Status : Hors ligne

Re: [..] Basculer sur une autre fenêtre alors que Firefox est en mode "plein écran"

#3

Message par JoCool »

Merci pour ta réponse.

J'avais vu qu'il existait une fonction ScreenCapture, mais ayant déjà écrit tout le script autrement, j'avais laissé tomber, me disant qu'il devait bien y avoir une solution avec les choix que j'avais faits.

Je vais tester ça.
Sinon, un pote m'a proposé d'utiliser la fonction de capture d'écran de Firefox. Ca peut être une solution si ça se trouve.

EDIT du 29/07 :
Effectivement l'usage de la fonction ScreenCapture était la meilleure solution, bien plus rapide et efficace.
Et au final, je n'avais pas forcément besoin d'avoir Firefox en mode plain écran.

Merci @mikell pour ton aide.
Je mets le sujet en Clos plutôt que Résolu car finalement la solution adoptée fonctionne, mais elle ne répond pas à la question de départ. Donc, si quelqu'un a un problème similaire, il n'y trouvera pas forcément la réponse attendue.
Répondre