<<< Process et Options >>> [C#]

<<< Process et Options >>> [C#] - C#/.NET managed - Programmation

Marsh Posté le 31-01-2006 à 11:45:27    

salut, j'ai un probleme, j'essai de lancer la commande "tracert -d -h 2 xxx.xxx.xxx.xxx" dans un programme
avec l'adresse ip en argument quand je lance mon programme
 

Code :
  1. Process tracert = new Process();
  2.                     tracert.StartInfo.FileName = "tracert -d -h 2";
  3.                     tracert.StartInfo.Arguments = args[0];
  4.                     tracert.Start();


 
et ca me met cette erreur :

Code :
  1. Unhandled Exception: System.ComponentModel.Win32Exception: Le fichier spécifié est intr
  2.    at System.Diagnostics.Process.StartWithShellExecuteEx(ProcessStartInfo startInfo)
  3.    at System.Diagnostics.Process.Start()
  4.    at Examples.System.Net.NetworkInformation.PingTest.PingExample.Main(String[] args)


 
 
lorsque je ne met pas les options  "-d -h 2" tout fonctionne
je ne trouve pas la classe permettant de mettre des options...  
 
merci


Message édité par shreck le 31-01-2006 à 14:22:51
Reply

Marsh Posté le 31-01-2006 à 11:45:27   

Reply

Marsh Posté le 31-01-2006 à 12:08:26    

personne ne sait?  
svp.....

Reply

Marsh Posté le 31-01-2006 à 12:18:32    

Code :
  1. Process.Start(@"cmd.exe",@"/c tracert.exe -d -h 2 tonsite.com" );


---------------
J'ai un string dans l'array (Paris Hilton)
Reply

Marsh Posté le 31-01-2006 à 12:40:08    

tracert.StartInfo.FileName = "tracert -d -h 2";
 
c'est un pas nom de fichier ca.
Le fichier c'est tracert.exe

Reply

Marsh Posté le 31-01-2006 à 13:30:55    

comment je fais pour mettre le nom du site en parametre svp?

Message cité 1 fois
Message édité par shreck le 31-01-2006 à 13:53:18
Reply

Marsh Posté le 31-01-2006 à 14:08:26    

tu ne sais pas ?

Reply

Marsh Posté le 31-01-2006 à 14:32:56    

shreck a écrit :

comment je fais pour mettre le nom du site en parametre svp?


tu as lu ce que j'ai marqué ?


---------------
J'ai un string dans l'array (Paris Hilton)
Reply

Marsh Posté le 31-01-2006 à 14:39:39    

oui mais au lieu de "tonsite.com" j'aimerai mettre args[0]
mais ca ne fonctionne pas, j'ai tout essayé , j'en peux plus je craque....

Reply

Marsh Posté le 31-01-2006 à 14:50:14    

shreck a écrit :

oui mais au lieu de "tonsite.com" j'aimerai mettre args[0]
mais ca ne fonctionne pas, j'ai tout essayé , j'en peux plus je craque....


oh la laaaa, c'est vraiment très dur... :pfff:
si tu lis la doc de C#, tu remarqueras que args[] est un tableau de string. donc tout ce que tu as à faire, c'est de concaténer le 2eme paramètre de Process.Start() qui est une string avec args[0] qui est aussi une string.
elle est où la difficulté ?


---------------
J'ai un string dans l'array (Paris Hilton)
Reply

Marsh Posté le 31-01-2006 à 15:03:57    

la difficulté c'est que je ne suis pas un développeur, je ne connais pas trop (voire pas du tout) le C, et encore moins le C#, mais je dois le faire..
pourrais tu me donner la syntaxe stp?
merci beaucoup

Reply

Marsh Posté le 31-01-2006 à 15:03:57   

Reply

Marsh Posté le 31-01-2006 à 15:22:24    

c'est ca que tu me dit? si cest ca ca ne fonctionne pas, mais je doute que jai écris quelque chose de juste...
 
Process.Start(@"cmd.exe",@"/c tracert.exe -d -h 4 > titi.txt" ).args[0];

Reply

Marsh Posté le 31-01-2006 à 15:56:03    

heuu
 
Process.Start(@"cmd.exe",@"/c tracert.exe -d -h 4 > titi.txt ,args[0]);  
 
le probleme cest que ca ne m'écrit rien dans le fichier, ca ne le crée meme pas..
je sais pas pourquoi...
si quelquun a une idée..
mmerci

Reply

Marsh Posté le 31-01-2006 à 16:01:36    

non mais t'as pas l'impression de faire n'importe quoi là ?
 
Process.Start(@"cmd.exe",@"/c tracert.exe -d -h 4 "+args[0]+@" > titi.txt " );
 
Je t'épargne l'utilisation d'un StringBuilder pour construire la chaine....


---------------
J'ai un string dans l'array (Paris Hilton)
Reply

Marsh Posté le 31-01-2006 à 16:06:14    

merci beaucoup , vraiment...

Reply

Marsh Posté le 31-01-2006 à 16:19:30    

je voulais savoir , si ca te dérange pas, est-ce qu'il est possible de faire une boucle du genre

Code :
  1. while (i<7)
  2. {
  3. i++;
  4. Process.Start(@"cmd.exe",@"/c tracert.exe -d -h" + i +args[0]+@" > titi.txt " );
  5. }


 
mais que le fichier titi.txt ne s'efface pas a chaque coup de la boucle?
 
merci

Reply

Marsh Posté le 31-01-2006 à 17:15:15    

?

Reply

Marsh Posté le 01-02-2006 à 08:52:20    

Sinon t'as pas l'impression de faire n'importe quoi là ??? !!! Ah bravo MDR!!

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed