CFtpFileFind クラス
FTP サーバーのインターネット ファイル検索を支援します。
class CFtpFileFind : public CFileFind
メンバー
パブリック コンストラクター
名前 |
説明 |
---|---|
CFtpFileFind オブジェクトを構築します。 |
パブリック メソッド
名前 |
説明 |
---|---|
FTP サーバー上のファイルを検索します。 |
|
前の呼び出しの FindFileにファイル検索を続けます。 |
|
URL を、見つかったファイルのパスを含む) を取得します。 |
解説
CFtpFileFind は検索を開始し、ファイルを探し、ファイルの URL または他の説明情報を返すメンバー関数があります。
インターネット検索とローカル ファイル用にデザインされたそのほかの MFC クラスは CGopherFileFind と CFileFindが含まれます。CFtpFileFindとともに、これらのクラスは、クライアントがサーバーのプロトコルまたはファイルの種類 (ローカル コンピューターまたはリモート サーバー) に関係なく、特定のファイルを検索できるようにシームレスな機構を提供します。HTTP で検索に必要なファイルの直接処理をサポートしないため、HTTP サーバーの検索の MFC クラスがないことに注意してください。
CFtpFileFind およびそのほかの WinInet クラスを使用する方法の詳細については、" " WinInet するインターネットのプログラミングを参照してください。
使用例
次のコードは、FTP サーバー上の現在のディレクトリのすべてのファイルを列挙する方法を示します。
// create a session object to initialize WININET library
// Default parameters mean the access method in the registry
// (that is, set by the "Internet" icon in the Control Panel)
// will be used.
CInternetSession sess(_T("My FTP Session"));
CFtpConnection* pConnect = NULL;
try
{
// Request a connection to ftp.microsoft.com. Default
// parameters mean that we'll try with username = ANONYMOUS
// and password set to the machine name @ domain name
pConnect = sess.GetFtpConnection(_T("ftp.microsoft.com"));
// use a file find object to enumerate files
CFtpFileFind finder(pConnect);
// start looping
BOOL bWorking = finder.FindFile(_T("*"));
while (bWorking)
{
bWorking = finder.FindNextFile();
_tprintf_s(_T("%s\n"), (LPCTSTR)finder.GetFileURL());
}
}
catch (CInternetException* pEx)
{
TCHAR sz[1024];
pEx->GetErrorMessage(sz, 1024);
_tprintf_s(_T("ERROR! %s\n"), sz);
pEx->Delete();
}
// if the connection is open, close it
if (pConnect != NULL)
{
pConnect->Close();
delete pConnect;
}
継承階層
CFtpFileFind
必要条件
ヘッダー: afxinet.h