Compartilhar via


_findnext, _wfindnext

Localizar o nome do próximo, se houver, que corresponde a filespec argumento em uma chamada anterior a _findfirste altere o fileinfo estruturar adequadamente o conteúdo.

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
    Identificador de pesquisa retornado por uma chamada anterior a _findfirst.

  • fileinfo
    Buffer de informações do arquivo.

Valor de retorno

Se for bem sucedida, retornará 0.Caso contrário, retorna – 1 e define errno para um valor que indica a natureza da falha.Possíveis códigos de erro são mostrados na tabela a seguir.

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

  • ENOENT
    Não há mais arquivos correspondentes podem ser encontrados.

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

Se um parâmetro inválido for passado, essas funções chamar o manipulador de parâmetro inválido, conforme descrito em Validação de parâmetro.

Comentários

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

As variações dessas funções com o w prefixo são versões de caractere largo; Caso contrário, eles são idênticos às funções de byte único correspondentes.

Variações dessas funções oferecem suporte a tipos de tempo de 32 bits ou 64 bits e tamanhos dos arquivos de 32 bits ou 64 bits.O primeiro sufixo numérico (32 ou 64) indica o tamanho do tipo tempo usado; o segundo sufixo é i32 ou i64, indicando se o tamanho do arquivo é representado como um inteiro de 32 bits ou 64 bits.Para obter informações sobre quais versões oferecem suporte tipos de tempo de 32 bits e 64 bits e tamanhos de arquivo, consulte a tabela a seguir.As variações que usam um tipo de tempo de 64 bits permitem que as datas de criação do arquivo a ser expressa até por meio de 23: 59: 59, 31 de dezembro de 3000, UTC; ao passo que aquelas que usam apenas os tipos de tempo de 32 bits representam datas até 19: 14: 07 18 de janeiro de 2038, UTC.Meia-noite, de 1º de janeiro de 1970, é o limite inferior do intervalo de datas para todas essas funções.

A menos que tenha um motivo específico para usar as versões que especifique o tamanho de tempo explicitamente, use _findnext ou _wfindnext ou, se você precisar oferecer suporte a arquivos maiores que 3 GB, use _findnexti64 ou _wfindnexti64.Todas essas funções usam o tipo de tempo de 64 bits.Nas versões anteriores, essas funções usadas de um tipo de tempo de 32 bits.Se esta for uma alteração significativa para um aplicativo, você pode definir _USE_32BIT_TIME_T para obter o comportamento antigo.Se _USE_32BIT_TIME_T for definido, _findnext, _finnexti64 e suas versões correspondentes do Unicode usem um horário de 32 bits.

Tipo de tempo e variações de tipo de tamanho de arquivo de _findnext

Funções

_USE_32BIT_TIME_Tdefinido?

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 é afetada pela definição de macro

32 bits

32 bits

_findnext64, _wfindnext64

Não é afetada pela definição de 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 é afetada pela definição de macro

32 bits

64 bits

_findnext64i32, _wfindnext64i32

Não é afetada pela definição de macro

64 bits

32 bits

Mapeamentos de rotina de texto genérico

Rotina de TCHAR.h

_ Unicode e _ MBCS do arquivo não definido

_ MBCS do arquivo 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 de compatibilidade, consulte compatibilidade na introdução.

Bibliotecas

Todas as versões da bibliotecas de tempo de execução c.

Equivalência do .NET Framework

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

Consulte também

Referência

Chamadas do sistema

_find, _wfind funções