_findfirst, _findfirst32, _findfirst32i64, _findfirst64, _findfirst64i32, _findfirsti64, _wfindfirst, _wfindfirst32, _wfindfirst32i64, _wfindfirst64, _wfindfirst64i32, _wfindfirsti64

 

Publicado: julio de 2016

Para obtener la documentación más reciente de Visual Studio 2017 RC, consulte Documentación de Visual Studio 2017 RC.

Proporciona información acerca de la primera instancia de un nombre de archivo que coincida con el archivo especificado en el filespec argumento.

intptr_t _findfirst(  
   const char *filespec,  
   struct _finddata_t *fileinfo   
);  
intptr_t _findfirst32(  
   const char *filespec,  
   struct _finddata32_t *fileinfo   
);  
intptr_t _findfirst64(  
   const char *filespec,  
   struct _finddata64_t *fileinfo   
);  
intptr_t _findfirsti64(  
   const char *filespec,  
   struct _finddatai64_t *fileinfo   
);  
intptr_t _findfirst32i64(  
   const char *filespec,  
   struct _finddata32i64_t *fileinfo   
);  
intptr_t _findfirst64i32(  
   const char *filespec,  
   struct _finddata64i32_t *fileinfo   
);  
intptr_t _wfindfirst(  
   const wchar_t *filespec,  
   struct _wfinddata_t *fileinfo   
);  
intptr_t _wfindfirst32(  
   const wchar_t *filespec,  
   struct _wfinddata32_t *fileinfo   
);  
intptr_t _wfindfirst64(  
   const wchar_t *filespec,  
   struct _wfinddata64_t *fileinfo   
);  
intptr_t _wfindfirsti64(  
   const wchar_t *filespec,  
   struct _wfinddatai64_t *fileinfo   
);  
intptr_t _wfindfirst32i64(  
   const wchar_t *filespec,  
   struct _wfinddata32i64_t *fileinfo   
);  
intptr_t _wfindfirst64i32(  
   const wchar_t *filespec,  
   struct _wfinddata64i32_t *fileinfo   
);  

Parámetros

filespec
Especificación de archivo de destino (puede incluir caracteres comodín).

fileinfo
Búfer de información de archivo.

Si se realiza correctamente, _findfirst devuelve un identificador de búsqueda única que identifica el archivo o grupo de archivos que coinciden con la filespec especificación, que se puede utilizar en una llamada subsiguiente a _findnext o _findclose. De lo contrario, _findfirst devuelve –&1; y establece errno a uno de los siguientes valores.

EINVAL
Parámetro no válido: filespec o fileinfo era NULL. O bien, el sistema operativo devolvió un error inesperado.

ENOENT
Especificación de archivo que no coincide.

ENOMEM
Memoria insuficiente.

EINVAL
Especificación del nombre de archivo no válido o el nombre de archivo dado era mayor que MAX_PATH.

Para obtener más información sobre estos y otros códigos de retorno, vea _doserrno, errno, _sys_errlist y _sys_nerr.

Si se pasa un parámetro no válido, estas funciones invocan el controlador de parámetros no válidos, como se describe en validación del parámetro.

Se debe llamar a _findclose cuando haya terminado con cualquiera el _findfirst o _findnext función (o cualquiera de sus variantes). Esto libera los recursos utilizados por estas funciones en la aplicación.

Las variaciones de estas funciones que tienen el w prefijo son versiones de caracteres anchos; de lo contrario, son idénticas a las funciones de un solo byte correspondientes.

Variaciones de estas funciones admiten tipos en tiempo de 32 bits o 64 bits y tamaños de los archivos de 32 bits o 64 bits. El primer sufijo numérico (32 o 64) indica el tamaño del tipo de tiempo; el segundo sufijo sea i32 o i64e indica si el tamaño del archivo se representa como un entero de 32 bits o 64 bits. Para obtener información acerca de qué versiones son compatibles con los tipos de tiempo de 32 bits y 64 bits y tamaños de archivo, consulte la tabla siguiente. El i32 o i64 sufijo se omite si es el mismo que el tamaño del tipo de tiempo, por lo que _findfirst64 también admite longitudes de archivos de 64 bits y _findfirst32 admite longitudes de archivo sólo de 32 bits.

Estas funciones utilizan distintas formas de la _finddata_t estructura para el fileinfo parámetro. Para obtener más información acerca de la estructura, consulte funciones de búsqueda de nombre de archivo.

Las variaciones que utilice un tipo en tiempo de 64 bits permiten las fechas de creación de archivo expresar 23:59:59 del 31 de diciembre de 3000, UTC. Aquellos que utilizan tipos de tiempo de 32 bits representan fechas hasta las 23:59:59 del 18 de enero de 2038, hora UTC. La noche del 1 de enero de 1970, es el límite inferior del intervalo de fechas para todas estas funciones.

A menos que tenga una razón concreta para usar las versiones que especificar el tamaño en tiempo de forma explícita, use _findfirst o _wfindfirst o, si necesita admitir más de 3 GB, use _findfirsti64 o _wfindfirsti64. Todas estas funciones usan el tipo en tiempo de 64 bits. En versiones anteriores, estas funciones utilizan un tipo en tiempo de 32 bits. Si se trata de un cambio importante para una aplicación, podría definir _USE_32BIT_TIME_T para revertir al comportamiento anterior. Si _USE_32BIT_TIME_T definido, _findfirst, _finfirsti64, y sus correspondientes versiones Unicode usen un horario de 32 bits.

Tipo de tiempo y las variaciones del tipo de longitud de archivo de _findfirst

Funciones_USE_32BIT_TIME_T¿definido?Tipo de tiempoTipo de longitud de archivo
_findfirst, _wfindfirstNo definida64 bits32 bits
_findfirst, _wfindfirstDefinido32 bits32 bits
_findfirst32, _wfindfirst32No se ve afectada por la definición de macro32 bits32 bits
_findfirst64, _wfindfirst64No se ve afectada por la definición de macro64 bits64 bits
_findfirsti64, _wfindfirsti64No definida64 bits64 bits
_findfirsti64, _wfindfirsti64Definido32 bits64 bits
_findfirst32i64, _wfindfirst32i64No se ve afectada por la definición de macro32 bits64 bits
_findfirst64i32, _wfindfirst64i32No se ve afectada por la definición de macro64 bits32 bits

Asignaciones de rutina de texto genérico

Rutina Tchar.h_UNICODE y _MBCS no definidos_MBCS definido_UNICODE definido
_tfindfirst_findfirst_findfirst_wfindfirst
_tfindfirst32_findfirst32_findfirst32_wfindfirst32
_tfindfirst64_findfirst64_findfirst64_wfindfirst64
_tfindfirsti64_findfirsti64_findfirsti64_wfindfirsti64
_tfindfirst32i64_findfirst32i64_findfirst32i64_wfindfirst32i64
_tfindfirst64i32_findfirst64i32_findfirst64i32_wfindfirst64i32
FunciónEncabezado necesario
_findfirst<io.h>
_findfirst32<io.h>
_findfirst64<io.h>
_findfirsti64<io.h>
_findfirst32i64<io.h>
_findfirst64i32<io.h>
_wfindfirst<io.h> o <wchar.h>
_wfindfirst32<io.h> o <wchar.h>
_wfindfirst64<io.h> o <wchar.h>
_wfindfirsti64<io.h> o <wchar.h>
_wfindfirst32i64<io.h> o <wchar.h>
_wfindfirst64i32<io.h> o <wchar.h>

Para obtener más información sobre compatibilidad, vea Compatibility en la introducción.

System::IO::DirectoryInfo::GetFiles

Llamadas del sistema
Funciones de búsqueda de nombre de archivo

Mostrar: