Process start

Process start - C#/.NET managed - Programmation

Marsh Posté le 26-09-2005 à 14:41:17    

Bonjour ,
 
Je souhaite lancer un programme a partir du mien et lui passer en paramètre un chemin d'un fichier. Le problème est que ce fichier est contenu dans "C:\Documents and Settings\" etc.
 
            Process myProcess = new Process();
            myProcess.StartInfo.FileName = MyProgPath;
            myProcess.StartInfo.Arguments = file;
            myProcess.Start();
 
MyProgPath= @"C:\monprogramme.exe"
file = @"C:\Documents and Settings\monparametre.jpg"
 
Le programme recevant le chemin d'accès n'arrive pas a ouvrir ce fichier car il contient des espaces : il essaie d'ouvrir @"C:\Documents" :/ Je ne peux pas toucher aux sources du programme recevant les paramètre ni meme voir ca source. Quelqu'un a une idée . Merci par avance
 
 

Reply

Marsh Posté le 26-09-2005 à 14:41:17   

Reply

Marsh Posté le 26-09-2005 à 15:44:49    

tu devrais essayer de protéger ton url de la sorte :
 
file = "\"C:\\Documents and Settings\\monparametre.jpg\""

Reply

Marsh Posté le 31-01-2006 à 10:04:29    

excuse moi , connait -tu par hasard le nom de la librairie a utiliser pour la fonction "Process" stp?

Reply

Marsh Posté le 31-01-2006 à 11:07:17    

bonyama a écrit :

Bonjour ,
 
Je souhaite lancer un programme a partir du mien et lui passer en paramètre un chemin d'un fichier. Le problème est que ce fichier est contenu dans "C:\Documents and Settings\" etc.
 
            Process myProcess = new Process();
            myProcess.StartInfo.FileName = MyProgPath;
            myProcess.StartInfo.Arguments = file;
            myProcess.Start();
 
MyProgPath= @"C:\monprogramme.exe"
file = @"C:\Documents and Settings\monparametre.jpg"
 
Le programme recevant le chemin d'accès n'arrive pas a ouvrir ce fichier car il contient des espaces : il essaie d'ouvrir @"C:\Documents" :/ Je ne peux pas toucher aux sources du programme recevant les paramètre ni meme voir ca source. Quelqu'un a une idée . Merci par avance


Ton chemin comportant des espaces, tu dois le mettre entre guillemets :
 
MyProgPath= @"""C:\monprogramme.exe"""
file = @"""C:\Documents and Settings\monparametre.jpg"""
 
Quand tu utilises @, et que tu veux insérer une guillemet, tu dois doubler cette guillemet. Voir la doc sur les chaines verbatim (nom des chaines précédées d'un @) dans la MSDN
 

zetranber a écrit :

tu devrais essayer de protéger ton url de la sorte :
 
file = "\"C:\\Documents and Settings\\monparametre.jpg\""


Inutile, il utilise le caractère "@" qui permet d'éviter d'échapper les caractères spéciaux.
 

shreck a écrit :

excuse moi , connait -tu par hasard le nom de la librairie a utiliser pour la fonction "Process" stp?


System.Diagnostics
edit: et Process n'est pas une fonction, mais une classe


Message édité par Harkonnen le 31-01-2006 à 11:09:21

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

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

merci bien Harkonnen pour tous ces renseignements

Reply

Sujets relatifs:

Leave a Replay

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