2016-06-29 1 views
0

J'appelle un autre fichier exe de formulaire dans mon formulaire principal, mais je ne voulais pas montrer qu'il doit être visible. alors j'ai besoin de fermer le fichier exe en cliquant sur le bouton.Comment exécuter visible et fermer le processus lorsque le bouton cliquez sur

-je appeler mon autre usage de la forme exe du code

ProcessStartInfo startInfo = new ProcessStartInfo(); 
startInfo.FileName = "C:\\Users\\server.exe"; 
Process.Start(startInfo); 

s'il vous plaît aidez-moi comment courir visible?

la lorsque l'on doit fermer que exe i utilisation

Process.Kill(); 

une référence d'objet est requis pour le champ non statique, la méthode ou la propriété 'Process.Kill()'

Je reçois cette erreur.

m'aider comment ouvrir un autre exe comme visible? et comment le fermer quand le bouton clique?

+0

Si vous appelez Process.Start, l'exe sera lancé et si ce exe a une fenêtre, la fenêtre sera visible. –

Répondre

1

Pour répondre à votre deuxième question:

Kill() est une méthode instance de Process, mais vous essayez de l'appeler comme une méthode statique .

Vous devez utiliser l'instance Process retourné par Process.Start() et appelez Kill() sur cette instance:

Process myProcessInstance = Process.Start(startInfo); 
//... 
myProcessInstance.Kill(); 

Pour votre première question: Je ne comprends pas bien votre problème? Voulez-vous voulez la fenêtre à apparaître ou non? Devrait-il être visible ou dans visible? Et qu'est-ce qui se passe (le voyez-vous ou non) lorsque vous exécutez votre code actuel?

Vous pouvez avoir un regard sur ProcessStartInfo.CreateNoWindow et ProcessStartInfo.WindowStyle propriétés.

Si vous ne voulez pas voir le formulaire créé par le fichier * .exe que vous avez démarré, vous ne pouvez malheureusement pas le déclencher simplement via le ProcessStartInfo. Vous devrez utiliser l'API Windows pour énumérer les fenêtres du processus démarré et accéder à ces fenêtres via cette API. Here is a starting point.

Si le server.exe est créé par vous, vous pouvez envisager de lui donner des arguments de ligne de commande pour lui dire de ne pas afficher les formulaires.

+0

Ma première question est la suivante: je ne veux pas montrer mon fichier exe. je veux rendre mon exe visible = faux; – Divi

+0

@Divi a mis à jour la réponse, mais ce n'est pas une chose simple à faire. –

+0

Merci ami pour votre aide ... Je rends mon formulaire comme caché avec l'aide d'Opacité = 0%. – Divi

1

Vous devez vous enregistrer dans une variable processus:

Process process = Process.Start(startInfo); 

process.Kill();