Processing Command Line Arguments Sample
This sample demonstrates how to parse command line arguments and make them available to an application.
This sample demonstrates a specific feature of the Windows Presentation Foundation and, consequently, does not follow application development best practices. For comprehensive coverage of Windows Presentation Foundation (WPF) and Microsoft .NET Framework application development best practices, refer to the following as appropriate:
Accessibility - Accessibility Best Practices
Localization - WPF Globalization and Localization Overview
Performance - Optimizing WPF Application Performance
Security - Windows Presentation Foundation Security
Building the Sample
Install the Windows Software Development Kit (SDK) and open its build environment command window. On the Start menu, point to All Programs, Microsoft Windows SDK, and then click CMD Shell.
Download the sample, usually from the software development kit (SDK) documentation, to your hard disk drive.
To build the sample from the build environment command window, go to the source directory of the sample. At the command prompt, type MSBUILD.
To build the sample in Microsoft Visual Studio, load the sample solution or project file and then press CTRL+SHIFT+B.
Running the Sample
To run the compiled sample from the build environment command window, execute the .exe file in the Bin\Debug or Bin\Release folder contained under the sample source code folder.
To run the compiled sample with debugging in Visual Studio, press F5.
This sample processes the command line arguments that are passed to an application by handling the StartupUri event and parsing the command line arguments that are exposed from Args. Each command line argument is tested to see whether it conforms to a particular format, "ArgumentName:ArgumentValue". If so, it is added to a list of command line arguments that are exposed from the Application subclass via the static CommandLineArgs property.
CommandLineArgs is of type Hashtable and is used to allow a command line argument value to be accessed using a key, as the sample demonstrates.