[R] Rajout de fonction pour un bouton d'un programme exis..

Aide sur les Interfaces Graphique Utilisateurs (GUI).
Règles du forum
.
Répondre
Bayo
Niveau 4
Niveau 4
Messages : 79
Enregistré le : mer. 23 avr. 2014 10:19
Status : Hors ligne

[R] Rajout de fonction pour un bouton d'un programme exis..

#1

Message par Bayo »

Bonjour,

Je voudrais savoir si il est possible de rajouter une fonction a un bouton d'un programme existant par exemple lancer l'explorateur windows en au3 et lorsqu'on appuie sur le bouton de fermeture de la fenêtre ça renvoi un message, en gros est ce possible de récupérer les ControlID d'un programme?

Merci d'avance pour vos réponses.
Modifié en dernier par Bayo le ven. 25 avr. 2014 07:59, modifié 1 fois.
Avatar du membre
jguinch
Modérateur
Modérateur
Messages : 2511
Enregistré le : lun. 14 févr. 2011 22:12
Status : Hors ligne

Re: [..] Rajout de fonction pour un bouton d'un programme ex

#2

Message par jguinch »

Peut-être du côté de _WinAPI_SetWindowsHookEx ?
Le script, ça fait gagner beaucoup de temps... à condition d'en avoir beaucoup devant soi !
Bayo
Niveau 4
Niveau 4
Messages : 79
Enregistré le : mer. 23 avr. 2014 10:19
Status : Hors ligne

Re: [..] Rajout de fonction pour un bouton d'un programme ex

#3

Message par Bayo »

d'après ce que je comprend, ça permet de récupérer des codes clavier. Enfin je crois (je suis loin d'être Bilingue lol).

J'ai tenté avec AutoIt Windows Info mais ça ne permet pas de récupérer les boutons systèmes. D'après ce que j'ai relu sur les ControlID, ils commencent au n°3 car le 0,1 et 2 sont pris par ces boutons c'est bien ça?
Donc avec AutoIt Windows Info je récupère sur windows 7 la Class pour la fenêtre CabinetWClass.
Je vais me mettre au dernier chapitre du tuto pour voir si il est possible d'utiliser le ControlID 2 par exemple de cette Class.

Ah moins que _WinAPI_SetWindowsHookEx me permette de faire plus simple.

Merci de ton aide
Avatar du membre
jguinch
Modérateur
Modérateur
Messages : 2511
Enregistré le : lun. 14 févr. 2011 22:12
Status : Hors ligne

Re: [..] Rajout de fonction pour un bouton d'un programme ex

#4

Message par jguinch »

Si tu nous expliquais le but, ça nous permettrait peut-être de t'orienter vers quelque chose, mais là...
Le script, ça fait gagner beaucoup de temps... à condition d'en avoir beaucoup devant soi !
Bayo
Niveau 4
Niveau 4
Messages : 79
Enregistré le : mer. 23 avr. 2014 10:19
Status : Hors ligne

Re: [..] Rajout de fonction pour un bouton d'un programme ex

#5

Message par Bayo »

Ben en fait c'est compliqué lol. Nous disposons de terminaux avec OS Embarquée et les droits sont très restreint, On a vérouillé la fermeture des pages iexplore par exemple donc il ne peuvent pas fermer IE. Mais pour une utilisation particulière on leur donne la possibilité d'ouvrir un explorateur windows mais il ne peuvent pas le fermer non plus donc j'aimerai que lorsqu'on clique sur la croix pour fermer la fenetre ça kill le process explorer.exe.

J'ai fait un au3 à part, qui le fait mais pour le moment je ne sais pas comment ou s'il ont peut l'intégrer à ce bouton système.

Merci.
Avatar du membre
jguinch
Modérateur
Modérateur
Messages : 2511
Enregistré le : lun. 14 févr. 2011 22:12
Status : Hors ligne

Re: [..] Rajout de fonction pour un bouton d'un programme ex

#6

Message par jguinch »

Pour faire plus simple, tu peux aussi surveiller l'ouverture et la fermeture de l'explorateur :
► Afficher le texte
?
Le script, ça fait gagner beaucoup de temps... à condition d'en avoir beaucoup devant soi !
Bayo
Niveau 4
Niveau 4
Messages : 79
Enregistré le : mer. 23 avr. 2014 10:19
Status : Hors ligne

Re: [..] Rajout de fonction pour un bouton d'un programme ex

#7

Message par Bayo »

Non puisse qu'ils ne peuvent pas le fermer :p je sais on est chiant lol
Avatar du membre
jguinch
Modérateur
Modérateur
Messages : 2511
Enregistré le : lun. 14 févr. 2011 22:12
Status : Hors ligne

Re: [..] Rajout de fonction pour un bouton d'un programme ex

#8

Message par jguinch »

OK, j'avais pas vu ça comme ça...
Je suis tombé sur ce topic, dans lequel ils utilisent une dll hook.dll.
J'ai testé et effectivement, ça permet d'intercepter les messages d'une autre application. :)
Par contre, je n'arrive pas à faire fonctionne ça avec l'explorateur...

Par contre, une question supplémentaire : quand tu dis "ils ne peuvent pas le fermer", ça se représente comment ? La croix est inactive ? masqué ?
Le script, ça fait gagner beaucoup de temps... à condition d'en avoir beaucoup devant soi !
Bayo
Niveau 4
Niveau 4
Messages : 79
Enregistré le : mer. 23 avr. 2014 10:19
Status : Hors ligne

Re: [..] Rajout de fonction pour un bouton d'un programme ex

#9

Message par Bayo »

Non ça leur met un message comme quoi il n'ont pas les droits pour fermer cette fenêtre :)

Ou en effet on peut voir le problème d'une manière différente et si l'on peut masquer le bouton de fermeture de l'IE pour pourvoir fermer les fenêtres d'explorateur Windows sans souci, faut que je regarde dans ce sens.

Merci.
Avatar du membre
jguinch
Modérateur
Modérateur
Messages : 2511
Enregistré le : lun. 14 févr. 2011 22:12
Status : Hors ligne

Re: [..] Rajout de fonction pour un bouton d'un programme ex

#10

Message par jguinch »

Oui, ça sera surement plus simple.
Du coup, ce que tu peux faire, c'est créer une fenêtre à la dimension que tu veux et créer un IE embarqué _IECreateEmbeded().
De cette façon t'affranchis du problème de fermeture...

Par contre je voulais savoir : c'est sous quel OS ? J'utilise Windows 7 et lorsque j'applique la stratégie locale "Menu Fichier : désactiver la fermeture des fenêtres du navigateur et de l’Explorateur", ça ne désactive la fermeture que pour IE, pas l'explorateur..


Edit : tu peux aussi bricoler dans la base de registre avant et après le lancement d'IE (après avoir pris le soin d'enlever ta restriction) :
► Afficher le texte
Le message d'erreur, ça fait pas très propre, je préfère la méthode du _IECreateEmbeded()...
Le script, ça fait gagner beaucoup de temps... à condition d'en avoir beaucoup devant soi !
Bayo
Niveau 4
Niveau 4
Messages : 79
Enregistré le : mer. 23 avr. 2014 10:19
Status : Hors ligne

Re: [..] Rajout de fonction pour un bouton d'un programme ex

#11

Message par Bayo »

on est sur du windows Embedded. Je testerai ta solution.

Merci beaucoup de ton aide.
Avatar du membre
mikell
Spammer !
Spammer !
Messages : 6292
Enregistré le : dim. 29 mai 2011 17:32
Localisation : Deep Cévennes
Status : Hors ligne

Re: [..] Rajout de fonction pour un bouton d'un programme ex

#12

Message par mikell »

Bayo a écrit :Non ça leur met un message comme quoi il n'ont pas les droits pour fermer cette fenêtre :)
If WinExists(message d'avertissement) Then ProcessClose(explorer) :mrgreen:
" L'échec est le fondement de la réussite. " (Lao-Tseu )
" Plus ça rate, plus on a de chances que ça marche " (les Shadoks )
Bayo
Niveau 4
Niveau 4
Messages : 79
Enregistré le : mer. 23 avr. 2014 10:19
Status : Hors ligne

Re: [..] Rajout de fonction pour un bouton d'un programme ex

#13

Message par Bayo »

Non plus car lors de la fermeture d'IE ils ont le même avertissement donc ça killerai le proc explorer alors qu'ils essayent de fermer IE.
Je met Résolu pour le moment en attendant de tester le code de jguinch, la on m'a mis sur autre chose donc pas le temps de tester ça :)
Merci encore.
Répondre