Page 1 sur 1

[R] Réduire ou cacher fenêtre

Posté : jeu. 12 févr. 2015 16:58
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

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

Posté : jeu. 12 févr. 2015 17:04
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)

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

Posté : jeu. 12 févr. 2015 18:27
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:

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

Posté : jeu. 12 févr. 2015 21:10
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

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

Posté : jeu. 12 févr. 2015 21:14
par jguinch
@Mikell : pourquoi pas WinWait ?

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

Posté : jeu. 12 févr. 2015 21:23
par mikell
@jguinch : parce que.
:P

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

Posté : jeu. 12 févr. 2015 21:23
par orax
La solution la plus compliquée est toujours la meilleure.

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

Posté : jeu. 12 févr. 2015 21:26
par jguinch
:wink:

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

Posté : jeu. 12 févr. 2015 21:39
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. ^^

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

Posté : ven. 13 févr. 2015 11:20
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

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

Posté : ven. 13 févr. 2015 11:34
par timmalos
Regardez au niveau de Opt(WinTitleMode), Ninite est peut être pas le premier mot de la fenêtre!

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

Posté : ven. 13 févr. 2015 12:02
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...

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

Posté : ven. 13 févr. 2015 18:11
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

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

Posté : ven. 13 févr. 2015 23:13
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 :( )

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

Posté : lun. 16 févr. 2015 11:13
par djigs
Bonjour à tous.
Merci pour vos réponse et le temps que vous avez consacré au sujet. On peut fermer le sujet...
Merci.

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

Posté : lun. 16 févr. 2015 11:20
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/

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

Posté : lun. 16 févr. 2015 13:54
par djigs
Hiiiiiiiiiiiiiiiiiiiiiiihaaaaaaaaaaaaaaaaaaaaa. Merci timmalos. Ca fonctionne nickel. Merci à tous :D :D :D :D :D