L'exécution de cmd.exe avec les arguments de c#
J'ai un dossier C:\Temp\ qui a deux fichier des.exe et d'entrée.abcd. des.exe est utilisé pour décrypter l'entrée.abcd. ci-dessous 2 bordée de travaux dans l'invite de commande
cd C:\Temp\
des.exe XXXX input.abcd output.zip
pourquoi ci-dessous ne fonctionne pas à partir de c#
string argument1 = "/K cd C:\\Temp\\ ";
string argument2 = "des.exe XXXX input.abcd output.zip" ;
System.Diagnostics.ProcessStartInfo proc = new System.Diagnostics.ProcessStartInfo();
proc.FileName = @"C:\windows\system32\cmd.exe";
proc.Arguments = String.Format("{0} {1}", argument1, argument2);
proc.WindowStyle = System.Diagnostics.ProcessWindowStyle.Maximized;
System.Diagnostics.Process.Start(proc);
pas d'erreur mais je ne vois pas output.zip il n'est donc pas de travail.
OriginalL'auteur user570715 | 2011-12-20
Vous devez vous connecter pour publier un commentaire.
Vous n'avez pas besoin d'exécuter cmd.exe en tant que processus. Tout ce que vous devez faire est d'exécuter "c:\temp\des.exe" avec les arguments de "XXXX entrée.abcd output.zip".
Assurez-vous de donner vos arguments les corriger plein de chemins ainsi si elles sont différentes de la temp dir.
Essayez
System.Diagnostics.Process.Start("c:\temp\des.exe", " XXXX c:\temp\input.abcd c:\temp\output.zip");
.qui ont travaillé. Merci!
OriginalL'auteur Andrew Hanlon
Le processus que vous souhaitez exécuter est dec.exe, pas cmd.exe. Essayez ceci, substitut {fullPath} avec chemin d'accès des.exe:
OriginalL'auteur Myles McDonnell