Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
Megjegyzés:
A Microsoft Foundation Classes (MFC) könyvtár továbbra is támogatott. A továbbiakban azonban nem adunk hozzá funkciókat, és nem frissítjük a dokumentációt.
Az FTP-kiszolgálók internetes fájlkeresésének segédletei.
Szemantika
class CFtpFileFind : public CFileFind
Tagok
Nyilvános konstruktorok
| Név | Description |
|---|---|
| CFtpFileFind::CFtpFileFind | Egy CFtpFileFind objektumot hoz létre. |
Nyilvános metódusok
| Név | Description |
|---|---|
| CFtpFileFind::FindFile | Fájl keresése FTP-kiszolgálón. |
| CFtpFileFind::FindNextFile | Folytatja a fájlkeresést a FindFile korábbi hívásából. |
| CFtpFileFind::GetFileURL | Lekéri a talált fájl URL-címét, beleértve az elérési utat is. |
Megjegyzések
CFtpFileFind olyan tagfüggvényeket tartalmaz, amelyek keresést indítanak, megkeresnek egy fájlt, és visszaadják a fájl URL-címét vagy más leíró adatait.
Az internethez és a helyi fájlkereséshez tervezett egyéb MFC-osztályok közé tartozik a CGopherFileFind és a CFileFind. Ezekkel az osztályokkal CFtpFileFindegyütt zökkenőmentes mechanizmust biztosítanak az ügyfél számára adott fájlok megkereséséhez, függetlenül attól, hogy a kiszolgáló protokollja vagy fájltípusa (helyi gép vagy távoli kiszolgáló). A HTTP-kiszolgálókon való kereséshez nincs MFC-osztály, mert a HTTP nem támogatja a keresésekhez szükséges közvetlen fájlkezelést.
A használat CFtpFileFind módjáról és a WinInet többi osztályáról a WinInettel való internetes programozás című cikkben talál további információt.
Example
Az alábbi kód bemutatja, hogyan sorolhatja fel az FTP-kiszolgáló aktuális könyvtárában lévő összes fájlt.
// 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;
}
Öröklési hierarchia
CFtpFileFind
Requirements
Fejléc: afxinet.h
CFtpFileFind::CFtpFileFind
Ez a tagfüggvény egy CFtpFileFind objektum létrehozásához van meghívva.
explicit CFtpFileFind(
CFtpConnection* pConnection,
DWORD_PTR dwContext = 1);
Paraméterek
pConnection
Egy objektumra mutató CFtpConnection mutató. Ftp-kapcsolatot a CInternetSession::GetFtpConnection hívásával szerezhet be.
dwContext
Az objektum környezeti azonosítója CFtpFileFind . További információkért tekintse meg az alábbi megjegyzéseket.
Megjegyzések
A dwContext alapértelmezett értékét az MFC küldi el az CFtpFileFind objektumnak az objektumot létrehozó CFtpFileFindCInternetSession objektumból. Felülbírálhatja az alapértelmezett beállítást, ha a környezetazonosítót egy ön által választott értékre állítja. A rendszer visszaadja a környezetazonosítót a CInternetSession::OnStatusCallback fájlnak, hogy állapotot adjon meg azon az objektumon, amellyel azonosították. A környezetazonosítóval kapcsolatos további információkért tekintse meg az internet első lépései: WinInet című cikket.
Example
Tekintse meg a jelen témakör korábbi, osztályáttekintő példáját.
CFtpFileFind::FindFile
A tagfüggvény meghívása FTP-fájl megkereséséhez.
virtual BOOL FindFile(
LPCTSTR pstrName = NULL,
DWORD dwFlags = INTERNET_FLAG_RELOAD);
Paraméterek
pstrName
A keresett fájl nevét tartalmazó sztringre mutató mutató. Null érték esetén a hívás helyettesítő karakteres keresést (*) hajt végre.
dwFlags
A munkamenet kezelését leíró jelzők. Ezek a jelzők a bitenkénti OR operátorral (|) kombinálhatók, és a következők:
INTERNET_FLAG_RELOADKérje le az adatokat a vezetékről, még akkor is, ha azokat helyileg gyorsítótárazza. Ez az alapértelmezett jelző.INTERNET_FLAG_DONT_CACHENe gyorsítótárazza az adatokat helyileg vagy átjárókban.INTERNET_FLAG_RAW_DATAFelülbírálja az alapértelmezett értéket a nyers adatok visszaadásához ( WIN32_FIND_DATA FTP-struktúrákhoz).INTERNET_FLAG_SECUREBiztonságossá teheti a tranzakciókat a vezetéken a Secure Sockets Layer vagy a PCT használatával. Ez a jelző csak HTTP-kérelmekre vonatkozik.INTERNET_FLAG_EXISTING_CONNECTHa lehetséges, használja újra a kiszolgáló meglévő kapcsolatait újFindFilekérésekhez ahelyett, hogy minden kéréshez új munkamenetet hoz létre.
Visszaadott érték
Nonzero, ha sikeres; egyéb esetben 0. A kiterjesztett hibainformációk lekéréséhez hívja meg a GetLastError Win32 függvényt.
Megjegyzések
Miután meghívta FindFile az első FTP-fájlt, meghívhatja a FindNextFile-t a későbbi FTP-fájlok lekéréséhez.
Example
Tekintse meg a jelen témakör korábbi példáját.
CFtpFileFind::FindNextFile
Hívja meg ezt a tagfüggvényt a FindFile tagfüggvény hívásával megkezdett fájlkeresés folytatásához.
virtual BOOL FindNextFile();
Visszaadott érték
Nonzero, ha több fájl van; nulla, ha a talált fájl az utolsó a könyvtárban, vagy ha hiba történt. A kiterjesztett hibainformációk lekéréséhez hívja meg a GetLastError Win32 függvényt. Ha a talált fájl az utolsó fájl a könyvtárban, vagy ha nem található egyező fájl, a GetLastError függvény ERROR_NO_MORE_FILES ad vissza.
Megjegyzések
Az attribútumfüggvények meghívása előtt legalább egyszer meg kell hívnia ezt a függvényt (lásd: CFileFind::FindNextFile).
FindNextFile a Win32 függvény FindNextFile sortörése.
Example
Tekintse meg a jelen témakör korábbi példáját.
CFtpFileFind::GetFileURL
Hívja meg ezt a tagfüggvényt a megadott fájl URL-címének lekéréséhez.
CString GetFileURL() const;
Visszaadott érték
Az univerzális erőforrás-kereső (URL) fájlja és elérési útja.
Megjegyzések
GetFileURL hasonló a CFileFind::GetFilePath tagfüggvényhez, azzal a kivételével, hogy URL-formátumban adja meg az eredményt. Ahogy az CFileFind::GetFilePathis, az eredmény nem tartalmazza a fájlnevet. Például a file1.txt visszaadott értékben //moose/dir/file1.txt:ftp://moose/dir/található.
Lásd még
CFileFind osztály
hierarchiadiagram
CGopherFileFind osztály
CInternetFile osztály
CGopherFile osztály
CHttpFile osztály