IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

C# Discussion :

class Process, réutilsation ?


Sujet :

C#

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre habitué
    Profil pro
    Inscrit en
    Novembre 2007
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2007
    Messages : 9
    Par défaut class Process, réutilsation ?
    Bonjour à tous,

    j'ai récemment découvert la classe "Process" qui me permet de lancer (par exemple) l'invite de commande et lui passer des commandes.
    Mon problème est le suivant, à chaque fois que je "start()" mon process, un nouveau PID lui est affecté, ce n'est donc plus le même process.
    Or, j'aurais aimé garder ce process "alive" jusqu'à ce que je lui dise de se terminer. Ceci afin de pouvoir enchainer les commandes à effectuer via des flux de lecture/écriture.

    Merci de votre aide.

  2. #2
    Invité
    Invité(e)
    Par défaut
    Salut,

    La durée de ton processus dépend de la durée de vie de ton application.
    Si ton application se termine alors le processus associé est libéré.

  3. #3
    Membre habitué
    Profil pro
    Inscrit en
    Novembre 2007
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2007
    Messages : 9
    Par défaut
    Hello,

    merci de ta réponse. Mon but est de lancer la commande "cmd", la garder active et pouvoir lui passer tout un tas de commande.
    Par exemple, si je fais un "cd monRep" quand je fais un "ls" (ou "dir" sous Windows) à la suite, le PID n'étant plus le même, le répertoire courant n'est pas "monRep"
    Donc en gros, ma question se résume à lancer "cmd" et faire en sorte qu'il ne se termine pas...

    Merci

  4. #4
    Membre habitué
    Profil pro
    Inscrit en
    Novembre 2007
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2007
    Messages : 9
    Par défaut
    Hello,

    en foullant sur internet, le problème ne vient peut être pas de mon instance de la classe "Process", mais peut-être de ce que je lui demande de faire... Je m'explique :

    Je pense qu'au lieu de lui demander de lancer "cmd" je dois ajouter une option pour rendre la console intéractive ("/K" pour Windows je crois et "-s -i" pour sh). En redirigeant mes entrées et sorties standardes, je devrais être en mesure de lire et écrire de manière asynchrone.
    Je teste ça ce soir et je vous tiens au courant.

    Si d'autres idées fleurissent, n'hésitez pas

  5. #5
    Rédacteur
    Avatar de Nathanael Marchand
    Homme Profil pro
    Expert .Net So@t
    Inscrit en
    Octobre 2008
    Messages
    3 615
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Expert .Net So@t
    Secteur : Conseil

    Informations forums :
    Inscription : Octobre 2008
    Messages : 3 615
    Par défaut
    Dans les arguments de démarrage du process tu peux passer le repertoire de démarrage. Tu peux également ouvrir un flux de lecture et un flux d'écriture (pour lancer des commandes et lire le résultat).

  6. #6
    Membre habitué
    Profil pro
    Inscrit en
    Novembre 2007
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2007
    Messages : 9
    Par défaut
    Hello,

    merci pour ta réponse.
    Effectivement, c'est en passant l'argument "-s" (mode intéractif sous Unix, et donc "/K" sous Windows) que cela marche. Il me restait simplement à rediriger mes flux d'entrées, de sorties et d'erreur

    Merci pour votre aide, ça marche nickel maintenant !
    On peut passer le thread à "Résolu".

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. WinRT Cherche la classe Process dans les projets Metro
    Par wil4linux dans le forum WinRT
    Réponses: 2
    Dernier message: 12/04/2012, 11h51
  2. class Process et Runtime
    Par salyiohh dans le forum Général Java
    Réponses: 2
    Dernier message: 19/01/2011, 09h18
  3. Problème avec la class Process et le CMD.EXE
    Par Thoustra dans le forum Débuter avec Java
    Réponses: 0
    Dernier message: 26/11/2010, 14h27
  4. Utilisation de la classe Process
    Par laedit dans le forum Framework .NET
    Réponses: 3
    Dernier message: 05/03/2010, 22h14
  5. Précisions sur la class Process et la méthode waitFor()
    Par Pierre.B dans le forum Général Java
    Réponses: 13
    Dernier message: 28/08/2009, 16h51

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo