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 :

Interpréter un script perl dans une textbox d'une appli c#


Sujet :

C#

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Inscrit en
    Octobre 2010
    Messages
    20
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Octobre 2010
    Messages : 20
    Par défaut Interpréter un script perl dans une textbox d'une appli c#
    Bonjour, je souhaiterai avoir des réponses à la question suivante: Es possible d'exécuter un script en perl à partir d'une application en C#.

    Je m'explique, j'ai un script en .pl qui est un parser xml qui va prendre des infos sur un site, bref à cer stade il marche impec rien à dire. C'est une boucle, dans la console du .pl on a les info qui défile de façon organiser :


    (Screen)

    Voilà, donc avec une appli en C# (servant à configurer le .pl avant l'exécution), le but du jeu serai d'afficher le ce que vous voyez dans la console, dans une textbox multi-line de l'appli.
    Je souhaite que mon programme émule la console en perl depuis une textbox multi line.

    Réponse déjà posé, sur un autre fofo: "tu pourrai coder un parser perl par contre ça serait du boulot :o" => Je l'ai déjà codé.

    Voilà, si je me suis fais comprendre !
    Merci, Cordialement Taris.

  2. #2
    Rédacteur/Modérateur


    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2004
    Messages
    19 875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2004
    Messages : 19 875
    Par défaut
    Tout ça pour parser du XML ? Ce serait quand même nettement plus simple de le faire directement en C#...

    Sinon, pour exécuter le script, il suffit que tu appelles perl.exe (avec la classe Process) en passant le nom du script en paramètre.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
        var process = new Process();
        process.StartInfo = new ProcessStartInfo("perl.exe", "tonScript.pl");
        process.StartInfo.RedirectStandardOutput = true;
        process.StartInfo.UseShellExecute = false;
        process.StartInfo.CreateNoWindow = true;
        process.Start();
        string output = process.StandardOutput.ReadToEnd();
        Console.WriteLine (output);
    Mais bon, je vois pas trop l'intérêt de faire ça alors que c'est si simple de parser du XML avec C#...

  3. #3
    Membre averti
    Homme Profil pro
    Inscrit en
    Octobre 2010
    Messages
    20
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Octobre 2010
    Messages : 20
    Par défaut
    Le but est de mettre ce que j'ai comme affichage de la console, la même chose, dans une textbox multi line. avoir la console du script perl affiché dans une textbox de l'appli C# (En donc GUI hein). Dans ce cas J'ai une hypothèse => Le parser perl créer un fichier en .sql regroupant les infos, il serai possible donc de lancer la console de façon caché (hide) (et sans doute avec un backgroundworker) et la textbox de l'appli c# lis en temps réel le fichier .sql qui se génère petit à petit ?

    Et non pas le lancé simplement justement ^^
    J'ai déjà un parser en VB.NET pour la même chose, c'est une question de connaissance simplement

  4. #4
    Rédacteur/Modérateur


    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2004
    Messages
    19 875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2004
    Messages : 19 875
    Par défaut
    Citation Envoyé par Talimidiusnx Voir le message
    Le but est de mettre ce que j'ai comme affichage de la console, la même chose, dans une textbox multi line. avoir la console du script perl affiché dans une textbox de l'appli C# (En donc GUI hein). Dans ce cas J'ai une hypothèse => Le parser perl créer un fichier en .sql regroupant les infos, il serai possible donc de lancer la console de façon caché (hide) (et sans doute avec un backgroundworker) et la textbox de l'appli c# lis en temps réel le fichier .sql qui se génère petit à petit ?

    Et non pas le lancé simplement justement ^^
    hein ?
    je comprends pas ce que SQL vient faire là dedans...

    Citation Envoyé par Talimidiusnx Voir le message
    J'ai déjà un parser en VB.NET pour la même chose, c'est une question de connaissance simplement
    Bah si tu sais le faire en VB.NET, c'est pas plus compliqué en C#... c'est les mêmes classes, les mêmes méthodes, y a que la syntaxe qui change

  5. #5
    Membre averti
    Homme Profil pro
    Inscrit en
    Octobre 2010
    Messages
    20
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Octobre 2010
    Messages : 20
    Par défaut
    Je m'explique,

    J'ai: 1 script .pl (perl) qui lorsque je le lance, va parser les infos sur un site pour retranscrire les infos utile (en variable) dans un fichier externe généré par celui ci qu'est un fichier .sql (osef du SQL c'est juste l'extension du fichier dit externe, qui est généré par le .pl)

    Bien !

    Après de mon côté, je souhaite, avec une appli C# (Windows form), émuler la console de mon script perl dans une textbox multilines. Car à la base, l'appli va me servir à configurer le script perl avant de l'exécuter, et le must serai donc d'avoir l'affichage de la console mais dans une textbox voilà ^^. Si c'est impossible, j'avais une autre hypothèse.

    Hypothèse: lorsqu'on va cliquer sur le bouton exécuter (prennant en charges les configurations de script), on lance comme vous le l'avez dit, tout simplement, mais que au lieu d'avoir la console du script perl, on ai simplement le fichier .sql généré petit à petit par le script perl ?? non ? on me suit ? x)

    Voilà !!

  6. #6
    Rédacteur/Modérateur


    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2004
    Messages
    19 875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2004
    Messages : 19 875
    Par défaut
    Bah le code que je t'ai donné fait exactement ce que tu veux... il faut juste remplacer le Console.WriteLine par un code qui va mettre le contenu de la variable output dans la TextBox

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

Discussions similaires

  1. Réponses: 1
    Dernier message: 13/04/2015, 11h17
  2. Réponses: 2
    Dernier message: 31/10/2011, 11h45
  3. Bind d'une textbox d'une usercontrol sur une Dependency property
    Par Yogy dans le forum Windows Presentation Foundation
    Réponses: 11
    Dernier message: 27/04/2010, 05h26
  4. Pb copier une valeur d'une textbox vers une cellule
    Par whykiki dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 09/12/2007, 11h49
  5. Réponses: 2
    Dernier message: 18/12/2006, 19h04

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