_findnext, _wfindnext

Найти следующее имя, которое соответствует filespec аргумент в предыдущем вызове метода _findfirst, а затем изменить fileinfo содержимое структуры соответственно.

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 
);

Параметры

  • handle
    Найдите маркер, возвращенный предыдущим вызовом метода _findfirst.

  • fileinfo
    Буфер данным файла.

Возвращаемое значение

В случае успеха возвращает значение 0.В противном случае возвращает и задает - 1 errno значение, показывающее природу до сбоя.Возможные коды ошибок отображаются в следующей таблице.

  • EINVAL
    Недопустимый параметр: fileinfo был NULL.Непредвиденную или операционная система вернула ошибку.

  • ENOENT
    Не удалось найти несколько соответствующих файлов.

  • ENOMEM
    Недостаточно памяти или длина имени файла, превысивших MAX_PATH.

Если передается недопустимый параметр, то эти функции вызываются недопустимый обработчик параметра, как описано в разделе Проверка параметров.

Заметки

Необходимо вызвать _findclose после завершения использования то _findfirst OR _findnext функции (или все варианты).Это освобождает ресурсы, используемые этими функциями в приложении.

Изменения этих функций с w префикс версии расширенных символов; в противном случае они идентичны соответствующим функциям единый-байта.

Изменения этих функций поддерживают 32 или 64 типов время обновления 32 (sp2) или 64 и размеры файлов.Первый числовой суффикс (32 OR 64) показывает размер типа используемого времени; суффикс то второй i32 OR i64отображает представлен ли размер файла, например 32 или 64 целое число.Дополнительные сведения о том, какие версии поддерживают пакетом обновления 32 (sp2) и пакетом обновления 64 (sp2) типы и размеры файлов времени см. в следующей таблице.Изменения, которые используют 64 тип времени позволяют даты файл-создания, выражаемые вверх до 23:59: 59 - 31-ое декабря 3000, в формате UTC. а те, используя типы представляют время обновления 32 (sp2) только даты до 19:14: 7-ое января 18, 2038 В формате UTC.Полуночи 1-ое января 1970, нижняя граница диапазона дат для всех этих функций.

Если не будет конкретную причину использовать версии, которые определяют размер времени явно, укажите _findnext OR _wfindnext или, если нужно ГБ размеров файлов поддержки превышающее 3, используйте _findnexti64 OR _wfindnexti64.Все эти функции используют 64 тип времени.В предыдущих версиях эти функции, используемые пакетом обновления 32 (sp2) тип времени.Если это критическое изменение приложения, то можно указать _USE_32BIT_TIME_T получить старую расширений функциональности.If _USE_32BIT_TIME_T определяет, _findnext" _finnexti64 и соответствующие версии Юникода используют 32 раз.

Время изменения типа и длины файла _findnext

Функции

_USE_32BIT_TIME_T определяется?

Тип Time

Тип длины файла

_findnext, _wfindnext

Не указано

64-разрядный

32-разр.

_findnext, _wfindnext

определен

32-разр.

32-разр.

_findnext32, _wfindnext32

Не затрагивается определения макроса

32-разр.

32-разр.

_findnext64, _wfindnext64

Не затрагивается определения макроса

64-разрядный

64-разрядный

_findnexti64, _wfindnexti64

Не указано

64-разрядный

64-разрядный

_findnexti64, _wfindnexti64

определен

32-разр.

64-разрядный

_findnext32i64, _wfindnext32i64

Не затрагивается определения макроса

32-разр.

64-разрядный

_findnext64i32, _wfindnext64i32

Не затрагивается определения макроса

64-разрядный

32-разр.

Сопоставления подпрограммы Родов-Текста

Подпрограмма Tchar.h

Не указанные _UNICODE и _MBCS

Указанный символ _MBCS

Указанный _UNICODE

_tfindnext

_findnext

_findnext

_wfindnext

_tfindnext32

_findnext32

_findnext32

_wfindnext32

_tfindnext64

_findnext64

_findnext64

_wfindnext64

_tfindnexti64

_findnexti64

_findnexti64

_wfindnexti64

_tfindnext32i64

_findnext32i64

_findnext32i64

_wfindnext32i64

_tfindnext64i32

_findnext64i32

_findnext64i32

_wfindnext64i32

Требования

Функция

Обязательный заголовок

_findnext

<io.h>

_findnext32

<io.h>

_findnext64

<io.h>

_findnexti64

<io.h>

_findnext32i64

<io.h>

_findnext64i32

<io.h>

_wfindnext

<io.h> OR <wchar.h>

_wfindnext32

<io.h> OR <wchar.h>

_wfindnext64

<io.h> OR <wchar.h>

_wfindnexti64

<io.h> OR <wchar.h>

_wfindnext32i64

<io.h> OR <wchar.h>

_wfindnext64i32

<io.h> OR <wchar.h>

Дополнительные сведения о совместимости см. Совместимость во введении.

Библиотеки

Все версии Библиотеки времени выполнения C.

Эквивалент в .NET Framework

Неприменимо. Для c# используйте стандартная функция PInvoke. Дополнительные сведения см. в разделе Примеры вызовов неуправляемого кода.

См. также

Ссылки

Системные вызовы

_find, функции _wfind