Freigeben über


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.

Hinweis WinINet keine Serverimplementierungen unterstützt. Darüber hinaus sollte sie nicht von einem Dienst verwendet werden. Verwenden Sie für Serverimplementierungen oder -dienste Microsoft Windows HTTP Services (WinHTTP).
 

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

Siehe auch

FTP-Sitzungen

WinINet-Funktionen