2013-02-24 197 views
0

嗨我想让我的自己能够也许定义我的应用程序到CMD,我可以键入程序,而不是program.exe有点像ping如何工作例如。两件事;控制台应用程序运行没有.exe和参数(C#控制台应用程序)

我还需要帮助参数。 我的应用程序的重点是发送一个获取请求到本地服务器评估PHP从中获取结果,这样我可以很容易地快速调试和计算CMD中的东西等。

因此,例如,我必须这样做。

W:\Users\example>e.exe 
echo "example"; 
..... 

example 


W:\Users\example> 

带上述事情拖曳是非常烦人的。我需要e.exe进入,比我需要输入代码EVAL: -/

我如何才能让,所以我可能只是这样做

W:\Users\example>e echo "example"; 
..... 

example 


W:\Users\example 

我真的希望得到这个工作,使用更快+更简单!这是一个程序员计算数学的方法:P

编辑: 下面是代码;

static void Main(string[] args) 
{ 
    WebClient client = new WebClient(); 
    Console.WriteLine("..."); 
    string input = Console.ReadLine(); 
    string php = client.DownloadString("http://192.168.1.50/test.php?exec="+input); 
    Console.WriteLine("....."); 
    Console.WriteLine(""); 
    Console.WriteLine(php); 
    Console.WriteLine(""); 
} 

我试图做“+ ARG [0],但什么事情都不做启动:

+0

我建议您阅读本文[命令行参数教程](http://msdn.microsoft.com/zh-cn/library/aa288457%28v=vs.71%29.aspx)。如果你必须解析几个选项,你可以使用一个辅助库来保持你的代码简单。看看[在C#中解析命令行参数的最佳方式](http://stackoverflow.com/questions/491595/best-way-to-parse-command-line-arguments-in-c)。 – 2013-02-24 18:08:31

+0

这在cmd.exe中也不起作用。请注意/ c命令行选项已可用。只是实现这一点。 – 2013-02-24 18:35:29

回答

0

不要输入名为” .exe”为你不需要输入它...您可能希望将您的e.exe放在PATH环境变量中列出的某个位置(或者将可执行文件的路径添加到PATH中)。

Main(string[] args)是传递给您的程序的参数 - 请使用它们。将在空格上拆分,因此如果需要将所有参数作为一个参数,则可能需要String.Join

如果您需要访问comple未解析的命令行,还可以使用Environment.CommandLine

+0

啊哈我甚至没有想过用.exe; – 2013-02-24 18:12:39

+0

你能给我看一个string.join的例子吗?因为我用过console.writeline(args [0]);并且在程序启动时不做任何事情: -/ – 2013-02-24 18:13:36

+0

用参数“e arg1 arg2”调用你的程序,你会看到参数(如果从VS运行 - 解决方案的属性 - >调试 - >命令行参数)...或者使用'Environemnt.Commandline'。 – 2013-02-24 18:18:53