CCommandLineInfo::ParseParam

CCommandLineInfo::ParseParam

virtual void ParseParam( LPCTSTR lpszParam, BOOL bFlag, BOOL bLast );

Parameters

lpszParam

The parameter or flag.

bFlag

Indicates whether lpszParam is a parameter or a flag.

bLast

Indicates if this is the last parameter or flag on the command line.

Remarks

The framework calls this function to parse/interpret individual parameters from the command line. CWinApp::ParseCommandLine calls ParseParam once for each parameter or flag on the command line, passing the argument to lpszParam. If the first character of the parameter is a ‘-’ or a ‘/’, then it is removed and bFlag is set to TRUE. When parsing the final parameter, bLast is set to TRUE.

The default implementation of this function recognizes the following flags: /p, /pt, /dde, /Automation, and /Embedding, as shown in the following table:

Command-line argument Command executed
app New file.
app filename Open file.
app /p filename Print file to default printer.
app /pt filename printer driver port Print file to the specified printer.
app /dde Start up and await DDE command.
app /Automation Start up as an OLE automation server.
app /Embedding Start up to edit an embedded OLE item.

This information is stored in m_bRunAutomated, m_bRunEmbedded, and m_nShellCommand. Flags are marked by either a forward-slash ‘/’ or hyphen ‘-’.

The default implementation puts the first non-flag parameter into m_strFileName. In the case of the /pt flag, the default implementation puts the second, third, and fourth non-flag parameters into m_strPrinterName, m_strDriverName, and m_strPortName, respectively.

The default implementation also sets m_bShowSplash to TRUE only in the case of a new file. In the case of a new file, the user has taken action involving the application itself. In any other case, including opening existing files using the shell, the user action involves the file directly. In a document-centric standpoint, the splash screen does not need to announce the application starting up.

Override this function in your derived class to handle other flag and parameter values.

CCommandLineInfo Overview |  Class Members |  Hierarchy Chart

See Also   CWinApp::ParseCommandLine