Unicode C
Unicode C
Send a Raw FTP Command (Quote)
See more FTP Examples
Demonstrates the Chilkat Ftp2.Quote method, which sends a raw FTP command and returns a success/failure result rather than the reply text. The only argument is the command, which must not contain CR or LF. The full reply is available in the LastReply property.
Background:
Quote and SendCommand do the same thing — send an arbitrary control-connection command — and differ only in what they return: Quote gives a boolean keyed on the reply code and leaves the text in LastReply, while SendCommand returns the reply string directly. Choose Quote when you mainly care whether the command succeeded.Chilkat Unicode C Downloads
#include <C_CkFtp2W.h>
void ChilkatSample(void)
{
BOOL success;
HCkFtp2W ftp;
success = FALSE;
// Demonstrates the Ftp2.Quote method, which sends a raw FTP command to the server. The only
// argument is the command text. Unlike SendCommand, it returns a success/failure bool rather
// than the reply text.
ftp = CkFtp2W_Create();
CkFtp2W_putHostname(ftp,L"ftp.example.com");
CkFtp2W_putUsername(ftp,L"myFtpLogin");
// Normally you would not hard-code the password in source. You should instead obtain it
// from an interactive prompt, environment variable, or a secrets vault.
CkFtp2W_putPassword(ftp,L"myPassword");
// Connect and log in (Connect performs both).
success = CkFtp2W_Connect(ftp);
if (success == FALSE) {
wprintf(L"%s\n",CkFtp2W_lastErrorText(ftp));
CkFtp2W_Dispose(ftp);
return;
}
// The command must not contain CR or LF characters. Here we send a NOOP as an example.
success = CkFtp2W_Quote(ftp,L"NOOP");
if (success == FALSE) {
wprintf(L"%s\n",CkFtp2W_lastErrorText(ftp));
CkFtp2W_Dispose(ftp);
return;
}
// The full server reply to the last command is available in the LastReply property.
wprintf(L"%s\n",CkFtp2W_lastReply(ftp));
success = CkFtp2W_Disconnect(ftp);
if (success == FALSE) {
wprintf(L"%s\n",CkFtp2W_lastErrorText(ftp));
CkFtp2W_Dispose(ftp);
return;
}
CkFtp2W_Dispose(ftp);
}