private static string[] ConstructMainArgs(SimpleCommandLineParser parser) { List <string> ret = new List <string>(); bool isBlobbing = parser["blob"] != null; for (int i = 0; i < parser.MainargLength; ++i) { string file = parser.getMainargs(i); if (isBlobbing) { DirectoryInfo di = new DirectoryInfo(Path.GetDirectoryName(file)); FileInfo[] allfi = di.GetFiles(Path.GetFileName(file)); bool isAdded = false; foreach (FileInfo f in allfi) { isAdded = true; ret.Add(f.FullName); } if (!isAdded) { // not a blob and does not exist, or it wa directory ret.Add(file); } } else { ret.Add(file); } } return(ret.ToArray()); }
static int Main(string[] args) { SimpleCommandLineParser parser = new SimpleCommandLineParser(args); parser.addOption("v", ARGUMENT_TYPE.MUST, "verb"); parser.addOption("a", ARGUMENT_TYPE.MUST, "arguments"); parser.addOption("type", ARGUMENT_TYPE.MUST, "type"); parser.addOption("name", ARGUMENT_TYPE.MUST, "name"); parser.Parse(); string verb = parser["v"].ToString(); // getString("v"); string arguments = parser["a"].ToString(); //.getString("a"); string folder = parser.getMainargs(0); if (string.IsNullOrEmpty(verb)) { MessageBox.Show("No Verb", Application.ProductName); return(-1); } if (string.IsNullOrEmpty(arguments)) { MessageBox.Show("No Arguments", Application.ProductName); return(-1); } if (string.IsNullOrEmpty(folder)) { MessageBox.Show("No Folder", Application.ProductName); return(-1); } if (!Directory.Exists(folder)) { MessageBox.Show(folder + " does not exist.", Application.ProductName); return(-1); } string type = parser["type"].ToString(); if (type != null) { if (type != "f" || type != "d") { MessageBox.Show("wrong type", Application.ProductName); return(-1); } } string name = parser["name"].ToString(); return(0); }
internal static string[] ConstructMainArgs(SimpleCommandLineParser parser) { List <string> ret = new List <string>(); bool isBlobbing = parser["glob"] != null; for (int i = 0; i < parser.MainargLength; ++i) { string file = parser.getMainargs(i); if (isBlobbing && file.IndexOf('*') >= 0) { //if (file == "*") // file = @".\*"; DirectoryInfo di = null; if (Path.IsPathRooted(file)) { di = new DirectoryInfo(Path.GetDirectoryName(file)); } else { di = new DirectoryInfo("."); } FileInfo[] allfi = di.GetFiles(Path.GetFileName(file)); // bool isAdded = false; foreach (FileInfo f in allfi) { // isAdded = true; ret.Add(f.FullName); } //if(!isAdded) //{ // // not a glob and does not exist, or it wa directory // ret.Add(file); //} } else { ret.Add(file); } } return(ret.ToArray()); }
static int Main(string[] args) { SimpleCommandLineParser parser = new SimpleCommandLineParser(args); parser.addOption("rf", ARGUMENT_TYPE.MUST); parser.addOption("rt", ARGUMENT_TYPE.MUST); parser.addOption("ie", ARGUMENT_TYPE.MUSTNOT); parser.addOption("ic", ARGUMENT_TYPE.MUSTNOT); parser.addOption("cf", ARGUMENT_TYPE.MUSTNOT); parser.addOption("ca", ARGUMENT_TYPE.MUSTNOT); parser.addOption("blob", ARGUMENT_TYPE.MUSTNOT); parser.addOption("h", ARGUMENT_TYPE.MUSTNOT); parser.addOption("?", ARGUMENT_TYPE.MUSTNOT); parser.Parse(); if (parser["h"] != null || parser["?"] != null) { return(0); } if (parser["ca"] != null) { // check argument StringBuilder sb = new StringBuilder(); if (parser["rf"] != null) { sb.Append("rf:"); sb.AppendLine(parser["rf"].ToString()); } if (parser["rt"] != null) { sb.Append("rt:"); sb.AppendLine(parser["rt"].ToString()); } if (parser["ie"] != null) { sb.AppendLine("ie"); } if (parser["ic"] != null) { sb.AppendLine("ic"); } if (parser["ca"] != null) { sb.AppendLine("ca"); } if (parser["cf"] != null) { sb.AppendLine("cf"); } if (parser["blob"] != null) { sb.AppendLine("blob"); } if (parser["h"] != null) { sb.AppendLine("h"); } if (parser["?"] != null) { sb.AppendLine("?"); } sb.AppendLine("--------------"); for (int i = 0; i < parser.MainargLength; ++i) { sb.AppendLine(parser.getMainargs(i)); } CppUtils.CenteredMessageBox(sb.ToString()); } return(0); }