Agir sur une fentre ouverte par shell

Résolu
Occhilu Messages postés 6 Date d'inscription mardi 18 août 2009 Statut Membre Dernière intervention 24 novembre 2009 - 23 nov. 2009 à 10:49
Occhilu Messages postés 6 Date d'inscription mardi 18 août 2009 Statut Membre Dernière intervention 24 novembre 2009 - 24 nov. 2009 à 08:27
BONJOUR,

je voulais savoir comment est il possible d'agir sur une fenetre précédement ouverte grâce à la commande shell.

Plus précisément comment fait on pour reduire, agrandir, la fenetre ouverte.
ex : shell("c:\bidule.exe")
....formWindowState=formwindowState.minimized?

Merci

4 réponses

PCPT Messages postés 13272 Date d'inscription lundi 13 décembre 2004 Statut Membre Dernière intervention 3 février 2018 47
23 nov. 2009 à 12:55
ProcessStartInfo correspond aux infos lors du START

si tu les modifies après que le process ne soit lancé, les actions seront sans effet

Dim procRes As New Process 
procRes = Process.Start("notepad.exe")

selon les besoins tu peux alors travailler sur procRes


consulte quand même ce lien qui contient quelques exemples :
http://msdn.microsoft.com/fr-fr/library/system.diagnostics.process.aspx

++
3
PCPT Messages postés 13272 Date d'inscription lundi 13 décembre 2004 Statut Membre Dernière intervention 3 février 2018 47
23 nov. 2009 à 10:58
salut,

1. on n'utilise plus SHELL en vb.net, voir les PROCESS

2. dans les deux cas te sont renvoyés des PID
du PID tu récupères le HANDLE
"formwindowstate" ou toute propriété ne peut correspondre qu'à ton application, pas à une fenêtre d'une autre application

c'est donc avec le HANDLE et les COMMANDES SYSTEME (WM_ ...) qu'il faut jouer, par SENDMESSAGE dans la plupart des cas


bonnes recherches (pour commencer), nous t'aideront sur cette voie après que tu l'aies explorée

ps : les mots en majuscules ne sont pas le "langage crié" (sur le net) mais bien les mots-clés à utiliser pour arriver à tes fins

++

[hr]
0
Occhilu Messages postés 6 Date d'inscription mardi 18 août 2009 Statut Membre Dernière intervention 24 novembre 2009
23 nov. 2009 à 11:58
Merci pour la réponse rapide.

J'ai réussi à ouvrir mon aplli en creant un process :

Dim monProcess As New ProcessStartInfo
        With MesCam
            .WorkingDirectory = "C:\aa\xx"
            .FileName = "monaplli.exe"
        End With
        Process.Start(monProcess)


Puis j'ai ensuite essayé de réduire la fentre grâce à :

monProcess.WindowStyle = ProcessWindowStyle.Minimized


Mais cela ne fonctionne pas, peux tu me guider?

Merci.
0
Occhilu Messages postés 6 Date d'inscription mardi 18 août 2009 Statut Membre Dernière intervention 24 novembre 2009
24 nov. 2009 à 08:27
Ok, merci pour ton aide je vais réussir à trouver ce qu'il m faut.
0
Rejoignez-nous