Advertisement
Advertisement
| 07.03.2008 at 02:55PM PDT, ID: 23538307 |
|
[x]
Attachment Details
|
||
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21: 22: 23: 24: 25: 26: 27: 28: 29: 30: 31: 32: 33: 34: 35: 36: 37: 38: 39: 40: 41: 42: 43: 44: |
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Collections;
using System.Text.RegularExpressions;
using System.Windows;
using System.Windows.Forms;
namespace CrewManagerInterface
{
public partial class ArgumentApp : System.Windows.Application
{
// Indexed command line args using hash table
public static Hashtable CommandLineArgs = new Hashtable();
void app_Startup(object sender, StartupEventArgs e)
{
// Don't bother if no command line args were passed
// NOTE: e.Args is never null - if no command line args were passed,
// the length of e.Args is 0.
if (e.Args.Length == 0) return;
// Parse command line args for args in the following format:
// /argname:argvalue /argname:argvalue /argname:argvalue ...
//
// Note: This sample uses regular expressions to parse the command line arguments.
// For regular expressions, see:
// http://msdn.microsoft.com/library/en-us/cpgenref/html/cpconRegularExpressionsLanguageElements.asp
string pattern = @"(?<argname>/\w+):(?<argvalue>\w+)";
foreach (string arg in e.Args)
{
Match match = Regex.Match(arg, pattern);
// If match not found, command line args are improperly formed.
if (!match.Success) throw new ArgumentException("The command line arguments are improperly formed. Use /argname:argvalue.");
// Store command line arg and value
CommandLineArgs[match.Groups["argname"].Value] = match.Groups["argvalue"].Value;
}
}
}
}
|