Command Line Parsing provides access to arguments passed on the command-line.
Conventional C and C++ programs receive their arguments from main( int argc, char* argv ) . On the Symbian platform, programs are invoked through an E32Main() function taking no arguments. Most Symbian programs are launched through a graphical shell rather than through a command-line. The common exceptions are .exe s on the PC platform, which can be run from a Windows command prompt.
For .exe programs, control is received through the E32Main() function, which does not supply arguments. Instead, access to arguments is provided by CCommandLineArguments . This class is not intended primarily for code running on a Symbian phone. Its main use is in parsing the arguments of WINC command-line utilities.
For a program that is launched as a new process, the arguments are available as part of the process command line and may be obtained in full using code as the following:
TInt argLen = User::CommandLineLength(); HBufC16* hBuf = HBufC::NewL( argLen ); TPtr tPtr = hBuf->Des(); User::CommandLine( tPtr );
However, the arguments are in a raw form. For convenience, the CCommandLineArguments class provides functions to access the program name as argument 0, and each command-line argument as argument 1, 2 etc. Arguments beginning with a quote may contain blanks and doubled quotes. Arguments not beginning with a quote are terminated by a blank.
Copyright ©2010 Nokia Corporation and/or its subsidiary(-ies).
All rights reserved. Unless otherwise stated, these materials are provided under the terms of the Eclipse Public License v1.0.