ProcessStartInfo arguments
J'ai un processus, qui prend des arguments. Je veux qu'il à commencer à partir de C#. J'ai essayé les mêmes arguments en raccourci et il fonctionne. D'autre part, en c# il ne marche pas, voici donc les arguments. L'argument format est correct, mais j'ai un mauvais argument error at-k
ProcessStartInfo prf = new ProcessStartInfo("C:\\" + "argstest.exe");
prf.UseShellExecute =true;
prf.Arguments = "-l http://test.tes1:[email protected]:3333/-k testing TYPE=0 USER=1 COUNT=10";
Process.Start(prf);
Processus commence, mais se ferme instantanément, parce que l'-k argument qui devrait être de test ne marche pas envoyé de programme.
J'ai essayé d'ajouter un espace avant -l, mais même, a également essayé @" -l ..."
- Et où est votre travail de code C#?
- Il ne fonctionne pas n'est pas utile. Dites nous en plus. Dites-nous comment il échoue. Montrer le reste de votre code.
- Bien, le processus s'arrête parce qu'il ne reçoit pas l'-k argument qui devrait tester.
- Plutôt que de goutte à goutte pour nous nourrir dans les commentaires, de modifier la question et de le corriger.
- Testé ton code et il n'y a rien de mal à cela. Le problème doit être dans votre application lorsque vous analysez vos arguments.
- Comment se fait-il fonctionne lorsque je le démarre à partir de raccourci?
- Ici, je vais poster le code que j'ai utilisé dans une réponse et vous pouvez regarder vous-même et, éventuellement comprendre ce qui est mal.
- Une petite remarque: pour créer un chemin à partir de la chaîne une meilleure façon est:
Path.Combine(@"C:\","argstest.exe")
- Avez-vous essayé de lancer un processus avec des paramètres à partir de l'invite de commande (cmd.exe)? Quel est le résultat?
Vous devez vous connecter pour publier un commentaire.
Essayez d'utiliser verbatim de la chaîne en paramètre arguments. Comme ceci:
J'ai testé votre code et n'a pas trouvé de problèmes. Peut-être que vous trouverez ce utile pour assurer le suivi de votre problème, je l'ai fait et vous pouvez faire la même chose:
L'Application de Console que vous essayez d'exécuter, j'ai fait ça:
À partir d'une autre application console, juste ceci:
La sortie:
C'est ce qui m'amène à croire que le problème n'est pas sur le Processus.Start (), mais dans la façon dont votre autre application est l'analyse de l'argumentation. Quant à savoir pourquoi le raccourci fonctionne et ce qui ne fonctionne pas, peut-être que vous devez copier/coller le raccourci que vous utilisez, pas vraiment sûr que l'on.
J'ai trouvé qui fonctionne le mieux pour cela est de mettre en place avec une fuite de devis autour de votre commande, comme suit: