Compartilhar via


_findnext, _wfindnext

Localize o nome seguir, altere se houver, que corresponde ao argumento de filespec em uma chamada anterior a _findfirst, e o conteúdo da estrutura de fileinfo adequadamente.

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

Parâmetros

  • handle
    Pesquise o identificador retornado por uma chamada anterior a _findfirst.

  • fileinfo
    O buffer de informações do Arquivo.

Valor de retorno

Se tiver êxito, retorna 0. Caso contrário, retornará – 1 e conjuntos errno para um valor que indica a natureza da falha. Os códigos de erro possíveis são mostrados na tabela a seguir.

  • EINVAL
    Parâmetro inválido: fileinfo foi NULL. Ou, o sistema operacional retornou um erro inesperado.

  • ENOENT
    Não mais arquivo compatível pôde ser localizado.

  • ENOMEM
    Não há memória suficiente ou o comprimento do nome de arquivo excederam MAX_PATH.

Se um parâmetro inválido é passado, essas funções invoca o manipulador inválido do parâmetro, conforme descrito em Validação do parâmetro.

Comentários

Você deve chamar _findclose depois que você terminar de usar _findfirst ou a função de _findnext (ou algumas variantes). Isso libera os recursos usados por essas funções em seu aplicativo.

Variações dessas funções com o prefixo de w são versões de ampla caractere; caso contrário, o valor é idêntico a funções correspondentes de um byte.

Variações dessas funções oferecem suporte a tipos de 32 bits ou de 64 bits de tempo e tamanhos de arquivos de 32 bits ou de 64 bits. O primeiro sufixo numérico (32 ou 64) indica o tamanho do tipo de tempo usado; o segundo sufixo é i32 ou i64, indicando se o tamanho do arquivo é representado como um inteiro de 32 bits ou de 64 bits. Para obter informações sobre as versões oferecem suporte aos tipos de 32 bits e de 64 bits e os tamanhos de arquivos de tempo, consulte a tabela a seguir. Variações que usam um tipo de 64 bits de tempo permitem que as datas de arquivo criar são expressas anterior a 23:59: o 31 de dezembro, 59, 3000, UTC; considerando que os que usam tipos de 32 bits de hora atuais representarem datas somente a 19:14: 7 de janeiro de 18, 2038, UTC. A meia-noite, o 1º de janeiro de 1970, é o limite inferior do intervalo de datas para todas essas funções.

A menos que você tenha uma razão específica usar as versões que especificam o tamanho de tempo explicitamente, use _findnext ou _wfindnext ou, se você precisar dar suporte a tamanhos de arquivo maior que 3 GB, para usar _findnexti64 ou _wfindnexti64. Todas essas funções usam o tipo de 64 bits de tempo. Em versões anteriores, essas funções usam um tipo de 32 bits de tempo. Se esta é uma alteração de quebra para um aplicativo, você pode definir _USE_32BIT_TIME_T para obter o comportamento antigo. Se _USE_32BIT_TIME_T é definido, _findnext, _finnexti64 e suas versões correspondentes Unicode usam um horário de 32 bits.

Hora em que o tipo e arquiva variações do tipo de comprimento de _findnext

Funções

_USE_32BIT_TIME_T definido?

Tipo de tempo

Tipo de tamanho de Arquivo

_findnext, _wfindnext

Não definido

64 bits

32 bits

_findnext, _wfindnext

Definido

32 bits

32 bits

_findnext32, _wfindnext32

Não afetado pela definição macro

32 bits

32 bits

_findnext64, _wfindnext64

Não afetado pela definição macro

64 bits

64 bits

_findnexti64, _wfindnexti64

Não definido

64 bits

64 bits

_findnexti64, _wfindnexti64

Definido

32 bits

64 bits

_findnext32i64, _wfindnext32i64

Não afetado pela definição macro

32 bits

64 bits

_findnext64i32, _wfindnext64i32

Não afetado pela definição macro

64 bits

32 bits

Mapeamentos da rotina de texto genérico

Rotina Tchar.h

_UNICODE e _MBCS não definidos

_MBCS definido

_UNICODE definido

_tfindnext

_findnext

_findnext

_wfindnext

_tfindnext32

_findnext32

_findnext32

_wfindnext32

_tfindnext64

_findnext64

_findnext64

_wfindnext64

_tfindnexti64

_findnexti64

_findnexti64

_wfindnexti64

_tfindnext32i64

_findnext32i64

_findnext32i64

_wfindnext32i64

_tfindnext64i32

_findnext64i32

_findnext64i32

_wfindnext64i32

Requisitos

Função

Cabeçalho necessário

_findnext

<io.h>

_findnext32

<io.h>

_findnext64

<io.h>

_findnexti64

<io.h>

_findnext32i64

<io.h>

_findnext64i32

<io.h>

_wfindnext

<io.h ou> wchar.h <>

_wfindnext32

<io.h ou> wchar.h <>

_wfindnext64

<io.h ou> wchar.h <>

_wfindnexti64

<io.h ou> wchar.h <>

_wfindnext32i64

<io.h ou> wchar.h <>

_wfindnext64i32

<io.h ou> wchar.h <>

Para obter mais informações sobre compatibilidade, consulte Compatibilidade na Introdução.

Bibliotecas

Todas as versões das Bibliotecas em tempo de execução C.

Equivalência do .NET Framework

Não aplicável. Para chamar a função padrão de C, use PInvoke. Para obter mais informações, consulte Exemplos de chamadas de plataformas.

Consulte também

Referência

Chamadas do sistema

Funções _find, _wfind