FtpFindFirstFileA-Funktion (wininet.h)
Durchsucht das angegebene Verzeichnis der angegebenen FTP-Sitzung. Datei- und Verzeichniseinträge werden in der WIN32_FIND_DATA Struktur an die Anwendung zurückgegeben.
Syntax
HINTERNET FtpFindFirstFileA(
[in] HINTERNET hConnect,
[in] LPCSTR lpszSearchFile,
[out] LPWIN32_FIND_DATAA lpFindFileData,
[in] DWORD dwFlags,
[in] DWORD_PTR dwContext
);
Parameter
[in] hConnect
Handle to an FTP session returned from InternetConnect.
[in] lpszSearchFile
Zeiger auf eine null-terminated string, die einen gültigen Verzeichnispfad oder Dateinamen für das DATEISYSTEM des FTP-Servers angibt. Die Zeichenfolge kann Platzhalter enthalten, aber keine Leerzeichen sind zulässig. Wenn der Wert von lpszSearchFileNULL- ist oder wenn es sich um eine leere Zeichenfolge handelt, findet die Funktion die erste Datei im aktuellen Verzeichnis auf dem Server.
[out] lpFindFileData
Zeigen Sie auf eine WIN32_FIND_DATA Struktur, die Informationen über die gefundene Datei oder das gefundene Verzeichnis empfängt.
[in] dwFlags
Steuert das Verhalten dieser Funktion. Dieser Parameter kann eine Kombination aus den folgenden Werten sein.
INTERNET_FLAG_HYPERLINK
INTERNET_FLAG_NEED_FILE
INTERNET_FLAG_NO_CACHE_WRITE
INTERNET_FLAG_RELOAD
INTERNET_FLAG_RESYNCHRONIZE
[in] dwContext
Zeigen Sie auf eine Variable, die den anwendungsdefinierten Wert angibt, der diese Suche allen Anwendungsdaten zuordnet. Dieser Parameter wird nur verwendet, wenn die Anwendung bereits InternetSetStatusCallback- aufgerufen hat, um eine Statusrückruffunktion einzurichten.
Rückgabewert
Gibt ein gültiges Handle für die Anforderung zurück, wenn die Verzeichnisaufzählung erfolgreich gestartet wurde, oder gibt NULL- andernfalls zurück. Rufen Sie GetLastError-auf, um eine bestimmte Fehlermeldung zu erhalten. Wenn GetLastError- ERROR_INTERNET_EXTENDED_ERROR zurückgibt, wie in dem Fall, in dem die Funktion keine übereinstimmenden Dateien findet, rufen Sie die InternetGetLastResponseInfo Funktion auf, um den erweiterten Fehlertext abzurufen, wie in Behandeln von Fehlerndokumentiert.
Bemerkungen
Für FtpFindFirstFile-befinden sich die in der WIN32_FIND_DATA Struktur zurückgegebenen Dateizeiten in der lokalen Zeitzone, nicht im koordinierten Weltzeitformat (UTC).
FtpFindFirstFile- ähnelt der funktion FindFirstFile. Beachten Sie jedoch, dass innerhalb einer bestimmten FTP-Sitzung jeweils nur ein FtpFindFirstFile- auftreten kann. Die Enumerationen werden daher mit dem FTP-Sitzungshandle korreliert. Dies liegt daran, dass das FTP-Protokoll nur eine einzelne Verzeichnisaufzählung pro Sitzung zulässt.
Nach dem Aufrufen FtpFindFirstFile- und bis zum Aufrufen InternetCloseHandle-kann die Anwendung FtpFindFirstFile erneut auf dem angegebenen FTP-Sitzungshandle aufrufen. Wenn ein Aufruf an FtpFindFirstFile- für dieses Handle erfolgt, schlägt die Funktion mit ERROR_FTP_TRANSFER_IN_PROGRESSfehl. Nachdem die aufrufende Anwendung die verwendung des HINTERNET- Von FtpFindFirstFilezurückgegebenen Handle abgeschlossen hat, muss sie mit der InternetCloseHandle--Funktion geschlossen werden.
Nach beginn einer Verzeichnisaufzählung mit FtpFindFirstFile-kann die InternetFindNextFile--Funktion verwendet werden, um die Enumeration fortzusetzen.
Da das FTP-Protokoll keine Standardmittel zum Aufzählen bietet, sind einige der allgemeinen Informationen zu Dateien, z. B. Datum und Uhrzeit der Dateierstellung, nicht immer verfügbar oder richtig. In diesem Fall FtpFindFirstFile- und InternetFindNextFile nicht verfügbare Informationen mit einer besten Schätzung basierend auf verfügbaren Informationen ausfüllen. Beispielsweise sind Erstellungs- und Datumsangaben für den letzten Zugriff häufig mit dem Änderungsdatum der Datei identisch.
Die Anwendung kann FtpFindFirstFile- zwischen Aufrufen von FtpOpenFile- und InternetCloseHandle-nicht aufrufen.
Wie alle anderen Aspekte der WinINet-API kann diese Funktion nicht innerhalb von DllMain oder den Konstruktoren und Destruktoren globaler Objekte sicher aufgerufen werden.
Anmerkung
Der wininet.h-Header definiert FtpFindFirstFile als Alias, der die ANSI- oder Unicode-Version dieser Funktion basierend auf der Definition der UNICODE-Präprozessorkonstante automatisch auswählt. Das Mischen der Verwendung des codierungsneutralen Alias mit Code, der nicht codierungsneutral ist, kann zu Nichtübereinstimmungen führen, die zu Kompilierungs- oder Laufzeitfehlern führen. Weitere Informationen finden Sie unter Konventionen für Funktionsprototypen.
Anforderungen
Anforderung | Wert |
---|---|
mindestens unterstützte Client- | Windows 2000 Professional [nur Desktop-Apps] |
mindestens unterstützte Server- | Windows 2000 Server [nur Desktop-Apps] |
Zielplattform- | Fenster |
Header- | wininet.h |
Library | Wininet.lib |
DLL- | Wininet.dll |