Bonjour à tous
Voilà, je me met au C# alor que je n'ais jamais dévellopé qu'en PHP,
donc j'ai un peut du mal
En fait, je galaire surtout sur 2 truc :
Premièrement, j'aimerais intaragire avec un programme en ligne de
commande, pour pouvoire faire une interface utilisateur. Donc, passer
des commandes, puis récupérer le résultat pour savoir comment réagire.
A savoir que quand le programme en question est lancé, on ne revien pas
forcément à l'invite c:>, mais que j'ai quand meme besoin de continuer
à passer des commandes au pragramme quand il l'attend
Deuxièmement, j'aimerais pouvoire rajouter une option dans le menu
clique droit de Windows lorsque on le fait sur un fichier (comme le font
par exemple les logiciel de compression/decompression), mais je n'arrive
pas à trouver comment faire...
Merci d'avance pour votre aide
Bonjour à tous
Voilà, je me met au C# alor que je n'ais jamais dévellopé qu'en PHP,
donc j'ai un peut du mal
En fait, je galaire surtout sur 2 truc :
Premièrement, j'aimerais intaragire avec un programme en ligne de
commande, pour pouvoire faire une interface utilisateur. Donc, passer
des commandes, puis récupérer le résultat pour savoir comment réagire.
A savoir que quand le programme en question est lancé, on ne revien pas
forcément à l'invite c:>, mais que j'ai quand meme besoin de continuer
à passer des commandes au pragramme quand il l'attend
Deuxièmement, j'aimerais pouvoire rajouter une option dans le menu
clique droit de Windows lorsque on le fait sur un fichier (comme le font
par exemple les logiciel de compression/decompression), mais je n'arrive
pas à trouver comment faire...
Merci d'avance pour votre aide
Bonjour à tous
Voilà, je me met au C# alor que je n'ais jamais dévellopé qu'en PHP,
donc j'ai un peut du mal
En fait, je galaire surtout sur 2 truc :
Premièrement, j'aimerais intaragire avec un programme en ligne de
commande, pour pouvoire faire une interface utilisateur. Donc, passer
des commandes, puis récupérer le résultat pour savoir comment réagire.
A savoir que quand le programme en question est lancé, on ne revien pas
forcément à l'invite c:>, mais que j'ai quand meme besoin de continuer
à passer des commandes au pragramme quand il l'attend
Deuxièmement, j'aimerais pouvoire rajouter une option dans le menu
clique droit de Windows lorsque on le fait sur un fichier (comme le font
par exemple les logiciel de compression/decompression), mais je n'arrive
pas à trouver comment faire...
Merci d'avance pour votre aide
Bonjour à tous
Voilà, je me met au C# alor que je n'ais jamais dévellopé qu'en PHP, donc
j'ai un peut du mal
En fait, je galaire surtout sur 2 truc :
Premièrement, j'aimerais intaragire avec un programme en ligne de commande,
pour pouvoire faire une interface utilisateur. Donc, passer des commandes,
puis récupérer le résultat pour savoir comment réagire.
A savoir que quand le programme en question est lancé, on ne revien pas
forcément à l'invite c:>, mais que j'ai quand meme besoin de continuer à
passer des commandes au pragramme quand il l'attend
Deuxièmement, j'aimerais pouvoire rajouter une option dans le menu clique
droit de Windows lorsque on le fait sur un fichier (comme le font par exemple
les logiciel de compression/decompression), mais je n'arrive pas à trouver
comment faire...
Merci d'avance pour votre aide
Bonjour à tous
Voilà, je me met au C# alor que je n'ais jamais dévellopé qu'en PHP, donc
j'ai un peut du mal
En fait, je galaire surtout sur 2 truc :
Premièrement, j'aimerais intaragire avec un programme en ligne de commande,
pour pouvoire faire une interface utilisateur. Donc, passer des commandes,
puis récupérer le résultat pour savoir comment réagire.
A savoir que quand le programme en question est lancé, on ne revien pas
forcément à l'invite c:>, mais que j'ai quand meme besoin de continuer à
passer des commandes au pragramme quand il l'attend
Deuxièmement, j'aimerais pouvoire rajouter une option dans le menu clique
droit de Windows lorsque on le fait sur un fichier (comme le font par exemple
les logiciel de compression/decompression), mais je n'arrive pas à trouver
comment faire...
Merci d'avance pour votre aide
Bonjour à tous
Voilà, je me met au C# alor que je n'ais jamais dévellopé qu'en PHP, donc
j'ai un peut du mal
En fait, je galaire surtout sur 2 truc :
Premièrement, j'aimerais intaragire avec un programme en ligne de commande,
pour pouvoire faire une interface utilisateur. Donc, passer des commandes,
puis récupérer le résultat pour savoir comment réagire.
A savoir que quand le programme en question est lancé, on ne revien pas
forcément à l'invite c:>, mais que j'ai quand meme besoin de continuer à
passer des commandes au pragramme quand il l'attend
Deuxièmement, j'aimerais pouvoire rajouter une option dans le menu clique
droit de Windows lorsque on le fait sur un fichier (comme le font par exemple
les logiciel de compression/decompression), mais je n'arrive pas à trouver
comment faire...
Merci d'avance pour votre aide
Merci beaucoup pour votre aide, je vais tester ce code des que j'en aurais
l'occasion.
Par contre, savez vous comment rajouter une option dans le mennu clique droit
de Windows ?
Merci d'avance
Merci beaucoup pour votre aide, je vais tester ce code des que j'en aurais
l'occasion.
Par contre, savez vous comment rajouter une option dans le mennu clique droit
de Windows ?
Merci d'avance
Merci beaucoup pour votre aide, je vais tester ce code des que j'en aurais
l'occasion.
Par contre, savez vous comment rajouter une option dans le mennu clique droit
de Windows ?
Merci d'avance
Merci beaucoup pour votre aide, je vais tester ce code des que j'en aurais
l'occasion.
Par contre, savez vous comment rajouter une option dans le mennu clique
droit de Windows ?
Merci beaucoup pour votre aide, je vais tester ce code des que j'en aurais
l'occasion.
Par contre, savez vous comment rajouter une option dans le mennu clique
droit de Windows ?
Merci beaucoup pour votre aide, je vais tester ce code des que j'en aurais
l'occasion.
Par contre, savez vous comment rajouter une option dans le mennu clique
droit de Windows ?
> Bonjour,
Voici une procédure pour exécuter une commande DOS et récuperer la sortie
standard de la commande dans un tableau string[]
--- Début du code
/// <summary>
/// Executer une commande DOS,
/// attendre la fin de la commande et
/// recuperer la sortie standard de la commande exécutée.
/// </summary>
/// <param name="cmd"> Commande à exécuter</param>
/// <param name="param"> Paramètres de la commande </param>
/// <returns>retour de la commande dans un string[] </returns>
public string[] CMDEXEC(string cmd, string param) {
ProcessStartInfo StartInfo=new ProcessStartInfo(cmd,param);
StartInfo.UseShellExecuteúlse;
StartInfo.StandardOutputEncoding=Encoding.GetEncoding(850);
StartInfo.RedirectStandardOutput=true;
StartInfo.CreateNoWindow=true;
Process proc=Process.Start(StartInfo);
// attendre la fin de la commande
proc.WaitForExit();
// récupérer la sortie standard
string result=proc.StandardOutput.ReadToEnd();
string[] result_lines=result.Split(new Char[]{'n'});
return result_lines;
}
--- fin du code
Bonne journée.
Luis
> Bonjour,
Voici une procédure pour exécuter une commande DOS et récuperer la sortie
standard de la commande dans un tableau string[]
--- Début du code
/// <summary>
/// Executer une commande DOS,
/// attendre la fin de la commande et
/// recuperer la sortie standard de la commande exécutée.
/// </summary>
/// <param name="cmd"> Commande à exécuter</param>
/// <param name="param"> Paramètres de la commande </param>
/// <returns>retour de la commande dans un string[] </returns>
public string[] CMDEXEC(string cmd, string param) {
ProcessStartInfo StartInfo=new ProcessStartInfo(cmd,param);
StartInfo.UseShellExecuteúlse;
StartInfo.StandardOutputEncoding=Encoding.GetEncoding(850);
StartInfo.RedirectStandardOutput=true;
StartInfo.CreateNoWindow=true;
Process proc=Process.Start(StartInfo);
// attendre la fin de la commande
proc.WaitForExit();
// récupérer la sortie standard
string result=proc.StandardOutput.ReadToEnd();
string[] result_lines=result.Split(new Char[]{'n'});
return result_lines;
}
--- fin du code
Bonne journée.
Luis
> Bonjour,
Voici une procédure pour exécuter une commande DOS et récuperer la sortie
standard de la commande dans un tableau string[]
--- Début du code
/// <summary>
/// Executer une commande DOS,
/// attendre la fin de la commande et
/// recuperer la sortie standard de la commande exécutée.
/// </summary>
/// <param name="cmd"> Commande à exécuter</param>
/// <param name="param"> Paramètres de la commande </param>
/// <returns>retour de la commande dans un string[] </returns>
public string[] CMDEXEC(string cmd, string param) {
ProcessStartInfo StartInfo=new ProcessStartInfo(cmd,param);
StartInfo.UseShellExecuteúlse;
StartInfo.StandardOutputEncoding=Encoding.GetEncoding(850);
StartInfo.RedirectStandardOutput=true;
StartInfo.CreateNoWindow=true;
Process proc=Process.Start(StartInfo);
// attendre la fin de la commande
proc.WaitForExit();
// récupérer la sortie standard
string result=proc.StandardOutput.ReadToEnd();
string[] result_lines=result.Split(new Char[]{'n'});
return result_lines;
}
--- fin du code
Bonne journée.
Luis
On Fri, 25 Apr 2008 19:28:01 +0200, "Guillaume" wrote:
La théorie est ici:
http://msdn2.microsoft.com/en-us/library/bb776820.aspx
Interessant aussi:
http://www.codeproject.com/KB/shell/SimpleContextMenu.aspx
Amicalement,
Gilles.
Regards,
Gilles [MVP].
(Please reply to the group, not via email.
Find my MVP profile with past articles / downloads here:
http://www.gilleskohl.de/mvpprofile.htm)
On Fri, 25 Apr 2008 19:28:01 +0200, "Guillaume" <no@spam.com> wrote:
La théorie est ici:
http://msdn2.microsoft.com/en-us/library/bb776820.aspx
Interessant aussi:
http://www.codeproject.com/KB/shell/SimpleContextMenu.aspx
Amicalement,
Gilles.
Regards,
Gilles [MVP].
(Please reply to the group, not via email.
Find my MVP profile with past articles / downloads here:
http://www.gilleskohl.de/mvpprofile.htm)
On Fri, 25 Apr 2008 19:28:01 +0200, "Guillaume" wrote:
La théorie est ici:
http://msdn2.microsoft.com/en-us/library/bb776820.aspx
Interessant aussi:
http://www.codeproject.com/KB/shell/SimpleContextMenu.aspx
Amicalement,
Gilles.
Regards,
Gilles [MVP].
(Please reply to the group, not via email.
Find my MVP profile with past articles / downloads here:
http://www.gilleskohl.de/mvpprofile.htm)
Bonjour,
Voici une procédure pour exécuter une commande DOS et récuperer la sortie
standard de la commande dans un tableau string[]
--- Début du code
/// <summary>
/// Executer une commande DOS,
/// attendre la fin de la commande et
/// recuperer la sortie standard de la commande exécutée.
/// </summary>
/// <param name="cmd"> Commande à exécuter</param>
/// <param name="param"> Paramètres de la commande </param>
/// <returns>retour de la commande dans un string[] </returns>
public string[] CMDEXEC(string cmd, string param) {
ProcessStartInfo StartInfo=new ProcessStartInfo(cmd,param);
StartInfo.UseShellExecuteúlse;
StartInfo.StandardOutputEncoding=Encoding.GetEncoding(850);
StartInfo.RedirectStandardOutput=true;
StartInfo.CreateNoWindow=true;
Process proc=Process.Start(StartInfo);
// attendre la fin de la commande
proc.WaitForExit();
// récupérer la sortie standard
string result=proc.StandardOutput.ReadToEnd();
string[] result_lines=result.Split(new Char[]{'n'});
return result_lines;
}
--- fin du code
Bonne journée.
Luis
Bonjour,
Je vien de tester le code, et ce n'est pas du tout ce que je demandais...
En fait, ce code execute un programe, et récupère la sortie, pion barre.
Donc pour moi, qui cherche à interagire avec des programmes en ligne de
commande, ça ne vas pas... en plus, je ne peut pas du tout executer de
commandes DOS, ou envoyer des instruction à un programme DOS déjà lancé
Pour faire simple (ne me demandez pas l'utilité du truc, c'est pour
l'exemple) si j'utilise ce code pour lancer CMD.exe, il va re retourner
les ligne d'accueil de CMD puis l'invite de commande. Mantenant, si je
veux passer un echo "coucou", y'a pas moyen...
Je ne sais pas si je suis clair, j'ai souvent du mal pour m'exprimer, mais
je vous remerci quand meme de me lire et de chercher à m'aider
Cordialement
Bonjour,
Voici une procédure pour exécuter une commande DOS et récuperer la sortie
standard de la commande dans un tableau string[]
--- Début du code
/// <summary>
/// Executer une commande DOS,
/// attendre la fin de la commande et
/// recuperer la sortie standard de la commande exécutée.
/// </summary>
/// <param name="cmd"> Commande à exécuter</param>
/// <param name="param"> Paramètres de la commande </param>
/// <returns>retour de la commande dans un string[] </returns>
public string[] CMDEXEC(string cmd, string param) {
ProcessStartInfo StartInfo=new ProcessStartInfo(cmd,param);
StartInfo.UseShellExecuteúlse;
StartInfo.StandardOutputEncoding=Encoding.GetEncoding(850);
StartInfo.RedirectStandardOutput=true;
StartInfo.CreateNoWindow=true;
Process proc=Process.Start(StartInfo);
// attendre la fin de la commande
proc.WaitForExit();
// récupérer la sortie standard
string result=proc.StandardOutput.ReadToEnd();
string[] result_lines=result.Split(new Char[]{'n'});
return result_lines;
}
--- fin du code
Bonne journée.
Luis
Bonjour,
Je vien de tester le code, et ce n'est pas du tout ce que je demandais...
En fait, ce code execute un programe, et récupère la sortie, pion barre.
Donc pour moi, qui cherche à interagire avec des programmes en ligne de
commande, ça ne vas pas... en plus, je ne peut pas du tout executer de
commandes DOS, ou envoyer des instruction à un programme DOS déjà lancé
Pour faire simple (ne me demandez pas l'utilité du truc, c'est pour
l'exemple) si j'utilise ce code pour lancer CMD.exe, il va re retourner
les ligne d'accueil de CMD puis l'invite de commande. Mantenant, si je
veux passer un echo "coucou", y'a pas moyen...
Je ne sais pas si je suis clair, j'ai souvent du mal pour m'exprimer, mais
je vous remerci quand meme de me lire et de chercher à m'aider
Cordialement
Bonjour,
Voici une procédure pour exécuter une commande DOS et récuperer la sortie
standard de la commande dans un tableau string[]
--- Début du code
/// <summary>
/// Executer une commande DOS,
/// attendre la fin de la commande et
/// recuperer la sortie standard de la commande exécutée.
/// </summary>
/// <param name="cmd"> Commande à exécuter</param>
/// <param name="param"> Paramètres de la commande </param>
/// <returns>retour de la commande dans un string[] </returns>
public string[] CMDEXEC(string cmd, string param) {
ProcessStartInfo StartInfo=new ProcessStartInfo(cmd,param);
StartInfo.UseShellExecuteúlse;
StartInfo.StandardOutputEncoding=Encoding.GetEncoding(850);
StartInfo.RedirectStandardOutput=true;
StartInfo.CreateNoWindow=true;
Process proc=Process.Start(StartInfo);
// attendre la fin de la commande
proc.WaitForExit();
// récupérer la sortie standard
string result=proc.StandardOutput.ReadToEnd();
string[] result_lines=result.Split(new Char[]{'n'});
return result_lines;
}
--- fin du code
Bonne journée.
Luis
Bonjour,
Je vien de tester le code, et ce n'est pas du tout ce que je demandais...
En fait, ce code execute un programe, et récupère la sortie, pion barre.
Donc pour moi, qui cherche à interagire avec des programmes en ligne de
commande, ça ne vas pas... en plus, je ne peut pas du tout executer de
commandes DOS, ou envoyer des instruction à un programme DOS déjà lancé
Pour faire simple (ne me demandez pas l'utilité du truc, c'est pour
l'exemple) si j'utilise ce code pour lancer CMD.exe, il va re retourner
les ligne d'accueil de CMD puis l'invite de commande. Mantenant, si je
veux passer un echo "coucou", y'a pas moyen...
Je ne sais pas si je suis clair, j'ai souvent du mal pour m'exprimer, mais
je vous remerci quand meme de me lire et de chercher à m'aider
Cordialement
Bonjour,
Cela dépend de l'application que vous manipulez :
1/Si votre application "attend" des informations sur son entrée standard,
vous pouvez utilisez Process.StandardInput (méthode inverse de
StandardOutput) pour envoyez des informations sur l'entrée standard.
2/Si votre application réagi à la souris ou ne prend rien dans son entrée
standard, il faudra dans ce cas trouvez un autre moyen de communication ou
alors simuler l'envoie des touches, de la souris,...etc
Cordialement
--
Gilles TOURREAU - MVP C#
Bonjour,
Cela dépend de l'application que vous manipulez :
1/Si votre application "attend" des informations sur son entrée standard,
vous pouvez utilisez Process.StandardInput (méthode inverse de
StandardOutput) pour envoyez des informations sur l'entrée standard.
2/Si votre application réagi à la souris ou ne prend rien dans son entrée
standard, il faudra dans ce cas trouvez un autre moyen de communication ou
alors simuler l'envoie des touches, de la souris,...etc
Cordialement
--
Gilles TOURREAU - MVP C#
Bonjour,
Cela dépend de l'application que vous manipulez :
1/Si votre application "attend" des informations sur son entrée standard,
vous pouvez utilisez Process.StandardInput (méthode inverse de
StandardOutput) pour envoyez des informations sur l'entrée standard.
2/Si votre application réagi à la souris ou ne prend rien dans son entrée
standard, il faudra dans ce cas trouvez un autre moyen de communication ou
alors simuler l'envoie des touches, de la souris,...etc
Cordialement
--
Gilles TOURREAU - MVP C#
Bonjour, et merci pour ces informations.
Bon, comme je le disait, je suis vraiment débutant en C#, donc je
galaire vraiment...
Mais j'ai essayer de me dépatouiller avec la doc grace à vous infos , et
j'ai pondu un code qui me semble correcte.
Cepandant, pour un raison qui m'échappe totalement, la ligne ou je se t
le standardInput à true fait completement planter l'apli quand je la
test, et je suis obligé de killer le process pour pouvoire retourner à
l'IDE...
Voici le code, si vous pouviez me dire ou est l'erreur, celà m'aidera is
énormément.
/**********************************************************/
public Process application (string fichier, string parametre) {
ProcessStartInfo StartInfo = new ProcessStartInfo(fichier, parametre) ;
StartInfo.UseShellExecute = false;
StartInfo.StandardOutputEncoding = Encoding.GetEncoding(850);
StartInfo.RedirectStandardInput = true;
StartInfo.RedirectStandardOutput = true;
StartInfo.CreateNoWindow = true;
Process resultat = Process.Start(StartInfo);
resultat.WaitForExit();
return resultat;
}
public Process commande(Process application, string commande) {
StreamWriter envoiCommande = application.StandardInput;
envoiCommande.WriteLine(commande);
envoiCommande.Close();
application.WaitForExit();
return application;
}
public string retourApplication(Process application) {
string resultat = application.StandardOutput.ReadToEnd();
return resultat;
}
private void button1_Click(object sender, EventArgs e) {
Process cmd = application(@"C:WINDOWSSystem32cmd.exe", "");
cmd = commande(cmd, "echo coucou");
string resultat = retourApplication(cmd);
label1.Text = resultat;
}
/**********************************************************/
Merci d'avance pour votre aide
Cordialement
Bonjour, et merci pour ces informations.
Bon, comme je le disait, je suis vraiment débutant en C#, donc je
galaire vraiment...
Mais j'ai essayer de me dépatouiller avec la doc grace à vous infos , et
j'ai pondu un code qui me semble correcte.
Cepandant, pour un raison qui m'échappe totalement, la ligne ou je se t
le standardInput à true fait completement planter l'apli quand je la
test, et je suis obligé de killer le process pour pouvoire retourner à
l'IDE...
Voici le code, si vous pouviez me dire ou est l'erreur, celà m'aidera is
énormément.
/**********************************************************/
public Process application (string fichier, string parametre) {
ProcessStartInfo StartInfo = new ProcessStartInfo(fichier, parametre) ;
StartInfo.UseShellExecute = false;
StartInfo.StandardOutputEncoding = Encoding.GetEncoding(850);
StartInfo.RedirectStandardInput = true;
StartInfo.RedirectStandardOutput = true;
StartInfo.CreateNoWindow = true;
Process resultat = Process.Start(StartInfo);
resultat.WaitForExit();
return resultat;
}
public Process commande(Process application, string commande) {
StreamWriter envoiCommande = application.StandardInput;
envoiCommande.WriteLine(commande);
envoiCommande.Close();
application.WaitForExit();
return application;
}
public string retourApplication(Process application) {
string resultat = application.StandardOutput.ReadToEnd();
return resultat;
}
private void button1_Click(object sender, EventArgs e) {
Process cmd = application(@"C:WINDOWSSystem32cmd.exe", "");
cmd = commande(cmd, "echo coucou");
string resultat = retourApplication(cmd);
label1.Text = resultat;
}
/**********************************************************/
Merci d'avance pour votre aide
Cordialement
Bonjour, et merci pour ces informations.
Bon, comme je le disait, je suis vraiment débutant en C#, donc je
galaire vraiment...
Mais j'ai essayer de me dépatouiller avec la doc grace à vous infos , et
j'ai pondu un code qui me semble correcte.
Cepandant, pour un raison qui m'échappe totalement, la ligne ou je se t
le standardInput à true fait completement planter l'apli quand je la
test, et je suis obligé de killer le process pour pouvoire retourner à
l'IDE...
Voici le code, si vous pouviez me dire ou est l'erreur, celà m'aidera is
énormément.
/**********************************************************/
public Process application (string fichier, string parametre) {
ProcessStartInfo StartInfo = new ProcessStartInfo(fichier, parametre) ;
StartInfo.UseShellExecute = false;
StartInfo.StandardOutputEncoding = Encoding.GetEncoding(850);
StartInfo.RedirectStandardInput = true;
StartInfo.RedirectStandardOutput = true;
StartInfo.CreateNoWindow = true;
Process resultat = Process.Start(StartInfo);
resultat.WaitForExit();
return resultat;
}
public Process commande(Process application, string commande) {
StreamWriter envoiCommande = application.StandardInput;
envoiCommande.WriteLine(commande);
envoiCommande.Close();
application.WaitForExit();
return application;
}
public string retourApplication(Process application) {
string resultat = application.StandardOutput.ReadToEnd();
return resultat;
}
private void button1_Click(object sender, EventArgs e) {
Process cmd = application(@"C:WINDOWSSystem32cmd.exe", "");
cmd = commande(cmd, "echo coucou");
string resultat = retourApplication(cmd);
label1.Text = resultat;
}
/**********************************************************/
Merci d'avance pour votre aide
Cordialement