2013-08-06 2 views
3

У меня есть проект C#, который принимает аргументы, которые я пытаюсь запустить из файла bat. Для приложения, который не принимает аргументов, я просто поместить следующее в файл с именем run.batКак запустить приложение C# с аргументами из пакетного файла

pathname\helloworld\bin\Debug\helloworld.exe 

Что делать, если моя программа принимает параметры, как настроить параметры. Когда используется эхо? любой хороший учебник по написанию пакетных файлов? Спасибо

+0

'C#' и 'c' разные языки. Будьте осторожны при пометке. –

+1

'' путь \ helloworld \ bin \ Debug \ helloworld.exe "" первый параметр "" второй параметр "'. –

+0

Попробуйте использовать http://stackoverflow.com/questions/3268022/process-start-arguments –

ответ

0

Аргументы строки просто следуют за EXE после пробела. Так что если у вас есть два параметра «Боб» и «рывок» вы могли бы написать это в .bat:

HelloWorld.exe Боб «является рывком»

Боб становится первым параметром, так как оно имеет пробелы вокруг него. Но «это толчок» - это все из-за кавычек. Таким образом, это будет два параметра.

В ваших темах упоминается C, но я не понимаю, действительно ли вы на самом деле означали, что вы это называете от C, the completely seperate language; вы, кажется, просто указали, что используете командный файл.

+2

Я не знаю почему, но я продолжал прокручивать вверх и вниз страницу, ища кого-то по имени Боб ... – ganders

1

Я хотел бы попробовать

@rem turn off echo - atsign is line-level way how to do it 
@echo off 
@rem provided your app takes three params, this is how to pass them to exe file 
pathname\helloworld\bin\Debug\helloworld.exe %1 %2 %3 
4
pathname\helloworld\bin\Debug\helloworld.exe "argument 1" "argument 2" 3 

using System; 
public class Demo { 
    public static void Main(string[] args) { 
     foreach(string arg in args) 
      Console.WriteLine(arg); 
    } 
} 
0

Для вашего файла биты, просто добавьте параметры после еха пути, как это:

pathname\helloworld\bin\debug\helloworld.exe param1 param2 

Тогда есть метод в вашем Program.cs файл, который выглядит примерно так:

[STAThread] 
static void Main(string[] args) 
{ 
    Application.Run(args.Length > 0 ? new Main(args[0]) : new Main()); 
} 

Здесь вы можно настроить параметры, которые обрабатываются, и отправить их в свою форму запуска.

Что касается эхо, это так же, как печать заявления, что вы хотите вывести в окно консоли ...

Смежные вопросы