Gérer un "handle" avec variable

Postez ici si vous avez des difficultés a comprendre une commande, ou a créer une macro.
Répondre
Syl20desr
Messages : 18
Enregistré le : 20 juil. 2018, 17:38

Gérer un "handle" avec variable

Message par Syl20desr » 30 juil. 2018, 06:49

Bonjour tous,
Maintenant que ma macro fonctionne (grâce à votre aide précieuse), j'aimerai l'optimiser et l'automatiser davantage.
Notamment dans la gestion des programmes ouverts.

Comme vous le savez, pour gérer un programme via sa fenêtre il faut utiliser d'abord "Objet" qui va nous donner le 'handle' = adresse de la fenêtre pour la retrouver ultérieurement.
Il faut ensuite rappeller ce 'handle' avec la "Manipulation objet".

Problème vu sur le forum mais non résolu: comment passer ce numéro de handle dans une variable afin d'utiliser cette variable avec la "Manipulation objet"?
Sans cela, alors chaque fois qu'on ferme le programme, il faudra recréer le handle et manuellement le remodifier dans la macro partout où on l'appelle.

Je vois qu'on peut passer une variable pour le 'handle' dans la "Manipulation Objet": GOOD!
Mais je ne vois pas comment enregistrer le handle lors de la création de l'objet.

Syl20desr
Messages : 18
Enregistré le : 20 juil. 2018, 17:38

Re: Gérer un "handle" avec variable

Message par Syl20desr » 04 août 2018, 16:54

Bonjour,
J'ai travaillé sur mon problème et ai trouvé la variable système [HANDLE.ACTIVEWINDOW] qui doit contenir la valeur du handle de la fenêtre ayant le focus.
Je n'arrive pas à m'en sortir par exemple avec ce bout de macro où j'espérais voir apparaître le numéro du handle de ma fenêtre Chrome (461576).

Code : Tout sélectionner

Objet	461576;0;chrome.exe;Chrome_WidgetWin_1;Nouvel onglet - Google Chrome;609;646;2;2;;;254;
Manipulation	461576;Agrandir;;;
Variable	[HANDLE.ACTIVEWINDOW];0;Numerique;
Message	Message;[HANDLE.ACTIVEWINDOW]
Or le message m'indique '0'...
Il ne doit pas manquer grand chose :?

Syl20desr
Messages : 18
Enregistré le : 20 juil. 2018, 17:38

Re: Gérer un "handle" avec variable

Message par Syl20desr » 04 août 2018, 17:12

Et maintenant LA solution: [HANDLE.FOREGROUNDWINDOW]
Je ne sais pas pourquoi mais ça marche 8-)

Code : Tout sélectionner

Variable	[HANDLE.FOREGROUNDWINDOW];0;Numerique;
Execute	"C:\Program Files (x86)\Google\Chrome\Application\chrome.exe"
Timer	300;
Variable	<Handle>;12;Numerique;
Calcul évolué	<Handle>=[HANDLE.FOREGROUNDWINDOW]
Manipulation	<Handle>;Réduire;;;
La macro ouvre Chrome puis le réduit CQFD
J'espère que ca pourra aider des gens

Avatar du membre
Onissius
Messages : 761
Enregistré le : 11 avr. 2014, 22:47
Localisation : Lyon (France)
Contact :

Re: Gérer un "handle" avec variable

Message par Onissius » 04 août 2018, 21:20

On trouve où tout les variable systèmes ?
Je me suis toujours demander si il y avait une liste quelque part et éventuellement en faire une liste.
J'ai découvert SM en 99, rapidement Adam m'a promu admin.
Posez vos questions aussi clairement que possible, sans fautes qui piquent les yeux et relisez vous.
Vérifiez sur mon DISCORD si je suis en ligne.

Syl20desr
Messages : 18
Enregistré le : 20 juil. 2018, 17:38

Re: Gérer un "handle" avec variable

Message par Syl20desr » 04 août 2018, 21:30

Quand tu ouvres une commande Variable, il y a un icone avec une "puce" à droite du nom de la variable.
En cliquant dessus, on fait apparaître lesdites commandes.
Il suffit alors de double-cliquer sur la variable système de ton choix.
J'ai trouvé ça sur un thread du forum.

Avatar du membre
Onissius
Messages : 761
Enregistré le : 11 avr. 2014, 22:47
Localisation : Lyon (France)
Contact :

Re: Gérer un "handle" avec variable

Message par Onissius » 05 août 2018, 01:07

Merci.
J'ai découvert SM en 99, rapidement Adam m'a promu admin.
Posez vos questions aussi clairement que possible, sans fautes qui piquent les yeux et relisez vous.
Vérifiez sur mon DISCORD si je suis en ligne.

Répondre