Anmerkung
Der Zugriff auf diese Seite erfordert eine Genehmigung. Du kannst versuchen, dich anzumelden oder die Verzeichnisse zu wechseln.
Der Zugriff auf diese Seite erfordert eine Genehmigung. Du kannst versuchen , die Verzeichnisse zu wechseln.
Suchen Sie ggf. den nächsten Namen, der dem filespec Argument in einem vorherigen Aufruf _findfirstentspricht, und ändern Sie dann den fileinfo Strukturinhalt entsprechend.
Syntax
int _findnext(
intptr_t handle,
struct _finddata_t *fileinfo
);
int _findnext32(
intptr_t handle,
struct _finddata32_t *fileinfo
);
int _findnext64(
intptr_t handle,
struct __finddata64_t *fileinfo
);
int _findnexti64(
intptr_t handle,
struct __finddatai64_t *fileinfo
);
int _findnext32i64(
intptr_t handle,
struct _finddata32i64_t *fileinfo
);
int _findnext64i32(
intptr_t handle,
struct _finddata64i32_t *fileinfo
);
int _wfindnext(
intptr_t handle,
struct _wfinddata_t *fileinfo
);
int _wfindnext32(
intptr_t handle,
struct _wfinddata32_t *fileinfo
);
int _wfindnext64(
intptr_t handle,
struct _wfinddata64_t *fileinfo
);
int _wfindnexti64(
intptr_t handle,
struct _wfinddatai64_t *fileinfo
);
int _wfindnext32i64(
intptr_t handle,
struct _wfinddatai64_t *fileinfo
);
int _wfindnext64i32(
intptr_t handle,
struct _wfinddata64i32_t *fileinfo
);
Parameter
handle
Der Suchhandle, der von einem vorherigen Aufruf _findfirstzurückgegeben wird.
fileinfo
Puffer für Dateiinformationen.
Rückgabewert
gibt bei Erfolg 0 zurück. Andernfalls wird -1 zurückgegeben und auf einen Wert festgelegt errno , der die Art des Fehlers angibt. Mögliche Fehlercodes werden in der folgenden Tabelle dargestellt.
Wert vom Typ errno |
Bedingung |
|---|---|
EINVAL |
Ungültiger Parameter: fileinfo entsprach NULL, oder das Betriebssystem hat einen unerwarteten Fehler zurückgegeben. |
ENOENT |
Es konnten keine übereinstimmenden Dateien gefunden werden. |
ENOMEM |
Nicht genügend Arbeitsspeicher oder der Dateiname ist größer als MAX_PATH. |
Wenn ein ungültiger Parameter übergeben wird, rufen diese Funktionen den ungültigen Parameterhandler auf, wie in der Parameterüberprüfung beschrieben.
Hinweise
Sie müssen aufrufen _findclose , nachdem Sie die Verwendung der _findfirst Funktion oder _findnext der Funktion (oder beliebige Varianten) abgeschlossen haben. _findclose gibt Ressourcen frei, die von diesen Funktionen in Ihrer Anwendung verwendet werden.
Die Variationen dieser Funktionen mit dem Präfix "w " sind Breitzeichenversionen. Andernfalls sind sie identisch mit den entsprechenden Einzelbytefunktionen.
Varianten dieser Funktionen unterstützen 32-Bit- oder 64-Bit-Zeittypen und 32-Bit- oder 64-Bit-Dateigrößen. Das erste numerische Suffix (32 oder 64) gibt die Größe des verwendeten Zeittyps an; das zweite Suffix ist entweder i32 oder i64und gibt an, ob die Dateigröße als ganze Zahl mit 32 Bit oder 64 Bit dargestellt ist. Informationen darüber, welche Versionen 32-Bit- und 64-Bit-Zeittypen und -Dateigrößen unterstützen, finden Sie in der folgenden Tabelle. In Varianten, die einen 64-Bit-Zeittyp verwenden, kann das Erstellungsdatum der Datei bis 23:59:59 am 31. Dezember 3000 (UTC) ausgedrückt werden. Die Varianten, die 32-Bit-Zeittypen verwenden, stellen Datumsangaben nur bis 23:59:59 am 18. Januar 2038 (UTC) dar. Der 1. Januar 1970 (Mitternacht) ist der älteste mögliche Datumsbereich für all diese Funktionen.
Verwenden Sie _findnext oder _wfindnext, oder _findnexti64 oder _wfindnexti64, wenn Sie Dateigrößen von mehr als 3 GB unterstützen müssen, es sei denn, Sie haben einen bestimmten Grund für die Verwendung der Versionen, die die Zeitgröße explizit angeben. All diese Funktionen verwenden den 64-Bit-Zeittyp. In früheren Versionen verwendeten diese Funktionen einen 32-Bit-Zeittyp. Wenn diese Änderung eine bahnbrechende Änderung für eine Anwendung ist, können Sie definieren _USE_32BIT_TIME_T , um das alte Verhalten zu erhalten. Wenn _USE_32BIT_TIME_T definiert ist, verwenden _findnext und _findnexti64 und die entsprechenden Unicode-Versionen verwenden einen 32-Bit-Zeittyp.
Standardmäßig gilt der globale Zustand dieser Funktion für die Anwendung. Wie Sie dieses Verhalten ändern, erfahren Sie unter Globaler Status in der CRT.
_findnext-Varianten des Uhrzeittyps und Dateilängentyps
| Funktionen | Ist _USE_32BIT_TIME_T definiert? |
Uhrzeittyp | Dateilängentyp |
|---|---|---|---|
_findnext, _wfindnext |
Nicht definiert | 64-Bit | 32-Bit |
_findnext, _wfindnext |
Definiert | 32 Bit | 32 Bit |
_findnext32, _wfindnext32 |
Nicht von der Makrodefinition betroffen | 32 Bit | 32 Bit |
_findnext64, _wfindnext64 |
Nicht von der Makrodefinition betroffen | 64 Bit | 64 Bit |
_findnexti64, _wfindnexti64 |
Nicht definiert | 64 Bit | 64 Bit |
_findnexti64, _wfindnexti64 |
Definiert | 32-Bit | 64-Bit |
_findnext32i64, _wfindnext32i64 |
Nicht von der Makrodefinition betroffen | 32-Bit | 64-Bit |
_findnext64i32, _wfindnext64i32 |
Nicht von der Makrodefinition betroffen | 64-Bit | 32-Bit |
Mapping generischer Textroutinen
| Tchar.h-Routine | _UNICODE und _MBCS nicht definiert |
_MBCS definiert |
_UNICODE definiert |
|---|---|---|---|
_tfindnext |
_findnext |
_findnext |
_wfindnext |
_tfindnext32 |
_findnext32 |
_findnext32 |
_wfindnext32 |
_tfindnext64 |
_findnext64 |
_findnext64 |
_wfindnext64 |
_tfindnexti64 |
_findnexti64 |
_findnexti64 |
_wfindnexti64 |
_tfindnext32i64 |
_findnext32i64 |
_findnext32i64 |
_wfindnext32i64 |
_tfindnext64i32 |
_findnext64i32 |
_findnext64i32 |
_wfindnext64i32 |
Anforderungen
| Funktion | Erforderlicher Header |
|---|---|
_findnext |
<io.h> |
_findnext32 |
<io.h> |
_findnext64 |
<io.h> |
_findnexti64 |
<io.h> |
_findnext32i64 |
<io.h> |
_findnext64i32 |
<io.h> |
_wfindnext |
<io.h> oder <wchar.h> |
_wfindnext32 |
<io.h> oder <wchar.h> |
_wfindnext64 |
<io.h> oder <wchar.h> |
_wfindnexti64 |
<io.h> oder <wchar.h> |
_wfindnext32i64 |
<io.h> oder <wchar.h> |
_wfindnext64i32 |
<io.h> oder <wchar.h> |
Weitere Informationen zur Kompatibilität finden Sie unter Kompatibilität.
Libraries
Alle Versionen der C-Laufzeitbibliotheken.