如何将"/ x"选项参数合并到.NET控制台应用程序中?

Ben*_*ack 4 .net c# vb.net console-application

许多命令行实用程序使用参数,例如:

gacutil /i MyDLL.dll
Run Code Online (Sandbox Code Playgroud)

要么

regasm /tlb:MyDll.tlb MyDll.dll
Run Code Online (Sandbox Code Playgroud)

如何建立一个.NET控制台应用程序采取命令行参数和,其次,你怎么可以模拟处理"选项"参数,如/i/tlb:在上述各例子吗?

Guf*_*ffa 7

您为Main方法声明了一个参数:

public static void Main(string[] args)
Run Code Online (Sandbox Code Playgroud)

现在你有一个数组,第一个例子包含:

args[0] = "/i"
args[1] = "MyDLL.dll"
Run Code Online (Sandbox Code Playgroud)

您只需解析字符串以确定参数的含义.有点像:

foreach (string cmd in args) {
  if (cmd.StartsWith("/")) {
    switch (cmd.Substring(1)) {
      case "i":
        // handle /i parameter
        break;
      // some more options...
      default:
        // unknown parameter
        break;
    }
  } else {
    // cmd is the filename
  }
}
Run Code Online (Sandbox Code Playgroud)