net-pratique
Messages postés20Date d'inscriptiondimanche 16 novembre 2003StatutMembreDernière intervention21 avril 2013
-
21 avril 2013 à 11:42
NHenry
Messages postés15113Date d'inscriptionvendredi 14 mars 2003StatutModérateurDernière intervention22 avril 2024
-
21 avril 2013 à 14:11
Bonjour a vous.
J'ai réalisé un bout de code qui exécute, interagit et retourne les information d'un exe (xfoil.exe) codé en Fortran. c'est un programme qui s'exécute et fonctionne à la sauce DOS, en ligne de commande.
Mon code (vb 2012) utilise les routines "process"et pour ne pas afficher la fenêtre de celui-ci j'ai ajouté ".WindowStyle = ProcessWindowStyle.Hidden"
dans mes lignes. le problème et que l'exécutable Xfoil.exe génère d'autres fenêtres
Me.AcceptButton = ExecuteButton
MyProcess = New Process
With MyProcess.StartInfo
.FileName = "c:\Xfoil.exe"
.UseShellExecute = False
.CreateNoWindow = True
.RedirectStandardInput = True
.RedirectStandardOutput = True
.RedirectStandardError = True
.WindowStyle = ProcessWindowStyle.Hidden
End With
MyProcess.Start()
le problème et que l'exécutable Xfoil.exe génère d'autres fenêtres dont je ne ne sais comment cacher leur présence. Existe t'il une piste pour surveiller l'exécution d'un process sans rentrer dans des boucles trop disgracieuses.
Ci-dessous
1-la fenêtre noir générée (donc à cacher).
2-Mon prog console en cours de développement.
3-Le gestionnaire des taches avec en surbrillance: le process à surveiller.
Bonjour,
Commence donc par afficher les processus actifs dans une listbox par exemple:
ListBox1.Items.Clear()
Dim myProcesses() As Process
Dim myProcess As Process
myProcesses = Process.GetProcesses()
For Each myProcess In myProcesses
ListBox1.Items.Add(myProcess.ProcessName)
Next
NHenry
Messages postés15113Date d'inscriptionvendredi 14 mars 2003StatutModérateurDernière intervention22 avril 2024159 21 avril 2013 à 14:11
Bonjour,
Il est possible de rechercher une fenêtre à partir de son titre, puis d'agir dessus, mais il faut passer par les API Windows.
Sinon, as-tu essayer de réduire la première fenêtre au lieu de la masquer (moins propre, mais à essayer).
v----Signature--------v----------------------------------------------
[list=ordered][*]Pour poser correctement une question et optimiser vos chances d'obtenir des réponses, pensez à lire le règlement CS, celui-ci pour bien poser votre question ou encore celui-ci pour les PFE et autres exercices.[*]Quand vous postez un code, merci d'utiliser la coloration syntaxique (3ième icône en partant de la droite : ).[*]En VB.NET pensez à activer Option Explicit et Option Strict (propriété du projet) et à retirer l'import automatique de l'espace de nom Microsoft.VisualBasic (onglet Références dans les propriétés du projet).[*]Si votre problème est résolu (et uniquement si c'est le cas), pensez à mettre "Réponse acceptée" sur le ou les messages qui vous ont aidés/list ---