_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.