Classe di CFtpFileFind
Persino nelle ricerche di file Internet dei server FTP.
class CFtpFileFind : public CFileFind
Membri
Costruttori pubblici
Nome |
Descrizione |
---|---|
Costruisce un oggetto CFtpFileFind. |
Metodi pubblici
Nome |
Descrizione |
---|---|
Cerca un file su un server FTP. |
|
Continua la ricerca di file da una chiamata precedente a FindFile. |
|
Ottiene l'url, incluso il percorso, il file trovato. |
Note
CFtpFileFind include le funzioni membro che avviano una ricerca, individua un file e restituisce l'url o altre informazioni descrittive sul file.
Altre classi MFC progettate per Internet e il file locale sono presenti CGopherFileFind e CFileFind.Insieme a CFtpFileFind, queste classi forniscono un singolo meccanismo per il client utilizzano i file specifici, indipendentemente dal protocollo o dal tipo di file server (un computer locale o un server remoto.Si noti che non c'è classe MFC per la ricerca nei server HTTP perché HTTP non supporta del file con richiesto per ricerche.
Per ulteriori informazioni su come utilizzare CFtpFileFind e le altre classi di ATL, vedere l'articolo Programmazione per Internet con ATL.
Esempio
Il codice seguente viene illustrato come enumerare tutti i file nella directory corrente del server 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;
}
Gerarchia di ereditarietà
CFtpFileFind
Requisiti
Header: afxinet.h