CFtpServer::GetCommandLine Method  
 
INT GetCommandLine(
  UINT nClientId,  
  LPTSTR lpszCmdLine,  
  INT nMaxLength  
);
INT GetCommandLine(
  UINT nClientId,  
  CString& strCmdLine  
);

Return the complete command line issued by the client.

Parameters

nClientId
An unsigned integer which uniquely identifies the client session.
lpszCmdLine
A pointer to a string buffer that will contain the command, including all arguments. The string buffer will be null terminated and must be large enough to store the complete command line. If this parameter is NULL, the method will return the length of the command line. An alternate version of this method accepts a CString object if it is available.
nMaxLength
An integer value that specifies the maximum number of characters that can be copied into the string buffer. The internal limit on the maximum length of a command is 1024 characters. If the maximum length specified is smaller than the actual length of the complete command, this method will fail.

Return Value

An integer value which specifies the number of characters copied into the buffer, not including the terminating null character. If the method fails, the return value will be zero and the GetLastError method can be used to retrieve the last error code. If the last error code has a value of zero then no command has been issued by the client.

Remarks

The GetCommandLine method is used to obtain the command that was issued by the client, and is commonly used inside the OnCommand and OnResult event handlers to pre-process and post-process client commands, respectively. When the method returns, the string buffer provided by the caller will contain the complete command, including all command parameters. Any extraneous whitespace will be removed, however quoted parameters will be retained as-is.

To obtain a specific parameter to a command, use the GetCommandParam method. The GetCommandParamCount method will return the number of command parameters that were provided by the client. If the command sent by the client is used to perform an action on a file or directory, the GetCommandFile method should be called to obtain the full path to the specified file rather than using the value of the command parameter.

Requirements

Minimum Desktop Platform: Windows 7 (Service Pack 1)
Minimum Server Platform: Windows Server 2008 R2 (Service Pack 1)
Header File: cstools10.h
Import Library: csftsv10.lib
Unicode: Implemented as Unicode and ANSI versions.

See Also

GetCommandFile, GetCommandParam, OnCommand, OnResult