[R] Réduire ou cacher fenêtre

Aide et conseils concernant AutoIt et ses outils.
Règles du forum
.
Répondre
djigs
Niveau 1
Niveau 1
Messages : 9
Enregistré le : jeu. 12 févr. 2015 14:17
Status : Hors ligne

[R] Réduire ou cacher fenêtre

#1

Message par djigs »

Bonjour à tous

Voilà tout est dans le titre. J'utilise Ninite pour faire une mise à jour logiciel de plusieurs machine. Ce que je souhaite faire c'est caché ou réduire la fenêtre aux utilisateurs une fois lancé.

Voici le code que j'ai mis en place mais qui ne fonctionne pas

Code : Tout sélectionner

; Droits Admin
#RequireAdmin

; Début d'installation
traytip("Installation de ninite","Ninite",1000)
[code]
;Pause de 5 secondes
sleep (2000)


;Lance le programme d'installation
ShellExecute("ninite.exe")

Sleep (8000)

WinSetState("Ninite","Ninite", @SW_HIDE)[/code]

Merci d'avance pour votre aide
Avatar du membre
orax
Modérateur
Modérateur
Messages : 1479
Enregistré le : lun. 23 mars 2009 04:50
Localisation : ::1
Status : Hors ligne

Re: [..] Réduire ou cacher fénétre

#2

Message par orax »

@SW_HIDE peut être spécifié directement au lancement.

Code : Tout sélectionner

ShellExecute("ninite.exe", "", @ScriptDir, "", @SW_HIDE)
ou

Code : Tout sélectionner

Run("ninite.exe", @ScriptDir, @SW_HIDE)
De petits détails peuvent faire toute la différence. — Quand la boule de neige commence à rouler… poussez-la. (Columbo)
djigs
Niveau 1
Niveau 1
Messages : 9
Enregistré le : jeu. 12 févr. 2015 14:17
Status : Hors ligne

Re: [..] Réduire ou cacher fénétre

#3

Message par djigs »

Merci pour ta réponse.
Justement j'ai testé en mettant @SW_HIDE directement au lancement mais cela ne fonctionne pas.
J'ai aussi testé

Code : Tout sélectionner

Run("ninite.exe", @ScriptDir, @SW_HIDE)
sans succès. :roll:
Avatar du membre
mikell
Spammer !
Spammer !
Messages : 6292
Enregistré le : dim. 29 mai 2011 17:32
Localisation : Deep Cévennes
Status : Hors ligne

Re: [..] Réduire ou cacher fénétre

#4

Message par mikell »

Et que donne la méthode bourrin ?

Code : Tout sélectionner

Opt("WinTitleMatchMode", -2)
ShellExecute("ninite.exe")
While 1
   If WinExists("Ninite") Then
       WinSetState("Ninite","", @SW_HIDE)
       Exitloop
   EndIf
Wend
" L'échec est le fondement de la réussite. " (Lao-Tseu )
" Plus ça rate, plus on a de chances que ça marche " (les Shadoks )
Avatar du membre
jguinch
Modérateur
Modérateur
Messages : 2515
Enregistré le : lun. 14 févr. 2011 22:12
Status : Hors ligne

Re: [..] Réduire ou cacher fénétre

#5

Message par jguinch »

@Mikell : pourquoi pas WinWait ?
Le script, ça fait gagner beaucoup de temps... à condition d'en avoir beaucoup devant soi !
Avatar du membre
mikell
Spammer !
Spammer !
Messages : 6292
Enregistré le : dim. 29 mai 2011 17:32
Localisation : Deep Cévennes
Status : Hors ligne

Re: [..] Réduire ou cacher fénétre

#6

Message par mikell »

@jguinch : parce que.
:P
" L'échec est le fondement de la réussite. " (Lao-Tseu )
" Plus ça rate, plus on a de chances que ça marche " (les Shadoks )
Avatar du membre
orax
Modérateur
Modérateur
Messages : 1479
Enregistré le : lun. 23 mars 2009 04:50
Localisation : ::1
Status : Hors ligne

Re: [..] Réduire ou cacher fénétre

#7

Message par orax »

La solution la plus compliquée est toujours la meilleure.
De petits détails peuvent faire toute la différence. — Quand la boule de neige commence à rouler… poussez-la. (Columbo)
Avatar du membre
jguinch
Modérateur
Modérateur
Messages : 2515
Enregistré le : lun. 14 févr. 2011 22:12
Status : Hors ligne

Re: [..] Réduire ou cacher fénétre

#8

Message par jguinch »

:wink:
Le script, ça fait gagner beaucoup de temps... à condition d'en avoir beaucoup devant soi !
Avatar du membre
Tlem
Site Admin
Site Admin
Messages : 11816
Enregistré le : ven. 20 juil. 2007 21:00
Localisation : Bordeaux
Status : Hors ligne

Re: [..] Réduire ou cacher fénétre

#9

Message par Tlem »

La solution de Michel permet de rajouter un traitement complémentaire dans la boucle. De plus, avec un WinWait(), le script est bloqué complètement s'il y a oubli du TimeOut. ^^
Thierry

Rechercher sur le forum ----- Les règles du forum
Le "ça ne marche pas" est une conséquence commune découlant de beaucoup trop de raisons potentielles ...

Une idée ne peut pas appartenir à quelqu'un. (Albert Jacquard) tiré du documentaire "Copié n'est pas volé".
djigs
Niveau 1
Niveau 1
Messages : 9
Enregistré le : jeu. 12 févr. 2015 14:17
Status : Hors ligne

Re: [..] Réduire ou cacher fénétre

#10

Message par djigs »

Merci Mikell pour ton script.

Je viens de le tester mais la fenêtre reste ouverte. En fait Ninite se lance à chaque démarrage de session pour faire des mise à jour. Le seul problème, c'est que la fenêtre reste au centre de l’écran et ne se ferme pas même après la fin des mise à jour. L'idée est de réduire la fenêtre et si possible l'icone au niveau de la barre des taches.
Merci d'avance
Avatar du membre
timmalos
Niveau 11
Niveau 11
Messages : 1970
Enregistré le : dim. 18 mai 2008 15:16
Status : Hors ligne

Re: [..] Réduire ou cacher fénétre

#11

Message par timmalos »

Regardez au niveau de Opt(WinTitleMode), Ninite est peut être pas le premier mot de la fenêtre!
djigs
Niveau 1
Niveau 1
Messages : 9
Enregistré le : jeu. 12 févr. 2015 14:17
Status : Hors ligne

Re: [..] Réduire ou cacher fénétre

#12

Message par djigs »

Merci pour ta réponse.
Ninite semble être le nom de la fenêtre car avec cette ligne

Code : Tout sélectionner

WinClose("Ninite")
, j'arrive à fermer la fenêtre. Par contre pour la réduire...
Avatar du membre
orax
Modérateur
Modérateur
Messages : 1479
Enregistré le : lun. 23 mars 2009 04:50
Localisation : ::1
Status : Hors ligne

Re: [..] Réduire ou cacher fénétre

#13

Message par orax »

Je viens de tester avec Ninite...
Pour cacher la fenêtre avec @SW_HIDE c'est impossible puisqu'une fois cachée, elle se ré-affiche. C'est sûrement voulu par le logiciel.
Mais pour la minimiser avec @SW_MINIMIZE ça devrait marcher.

Code : Tout sélectionner

#RequireAdmin
While 1
    If WinExists("Ninite") Then
        WinSetState("Ninite", "", @SW_MINIMIZE)
        ExitLoop
    EndIf
    Sleep(100)
WEnd
De petits détails peuvent faire toute la différence. — Quand la boule de neige commence à rouler… poussez-la. (Columbo)
Avatar du membre
jguinch
Modérateur
Modérateur
Messages : 2515
Enregistré le : lun. 14 févr. 2011 22:12
Status : Hors ligne

Re: [..] Réduire ou cacher fénétre

#14

Message par jguinch »

A mon avis c'est fait exprès : quand on regarde la page Command-Line Switch Reference, on peut voir qu'il y a le commutateur /silent, mais qui est limité à la version PRO uniquement (comme par hasard :( )
Le script, ça fait gagner beaucoup de temps... à condition d'en avoir beaucoup devant soi !
djigs
Niveau 1
Niveau 1
Messages : 9
Enregistré le : jeu. 12 févr. 2015 14:17
Status : Hors ligne

Re: [..] Réduire ou cacher fénétre

#15

Message par djigs »

Bonjour à tous.
Merci pour vos réponse et le temps que vous avez consacré au sujet. On peut fermer le sujet...
Merci.
Avatar du membre
timmalos
Niveau 11
Niveau 11
Messages : 1970
Enregistré le : dim. 18 mai 2008 15:16
Status : Hors ligne

Re: [..] Réduire ou cacher fénétre

#16

Message par timmalos »

Au pire, on peut toujours essayer de contourner ;)

Essaye

Code : Tout sélectionner

 WinSetTrans ( "Ninite", "", 0 )


EDIT : Encore mieux, Déjà traité côté US avec la meme solution : http://www.autoitscript.com/forum/topic ... te-silent/
djigs
Niveau 1
Niveau 1
Messages : 9
Enregistré le : jeu. 12 févr. 2015 14:17
Status : Hors ligne

Re: [..] Réduire ou cacher fénétre

#17

Message par djigs »

Hiiiiiiiiiiiiiiiiiiiiiiihaaaaaaaaaaaaaaaaaaaaa. Merci timmalos. Ca fonctionne nickel. Merci à tous :D :D :D :D :D
Répondre