_findnext, _wfindnext
Trovare il nome seguente, se presente, che corrisponde a filespec argomento in una chiamata precedente a _findfirstquindi modificare fileinfo strutturare pertanto il contenuto.
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
);
Parametri
handle
Handle di ricerca restituite da una chiamata precedente a _findfirst.fileinfo
Buffer di informazioni sul file.
Valore restituito
Se l'operazione riesce, restituisce 0.In caso contrario, restituisce a 1 e set errno su un valore che indica la natura dell'errore.I codici di errore possibili sono riportati nella tabella seguente.
EINVAL
parametro non valido: fileinfo era NULL.In alternativa, il sistema operativo ha restituito un errore imprevisto.ENOENT
Non più file corrispondente è stato trovato.ENOMEM
Memoria insufficiente o la lunghezza del nome file è stato superato MAX_PATH.
Se viene passato un parametro non valido in, la chiamata di queste funzioni del gestore non valido di parametro, come descritto in Convalida dei parametri.
Note
È necessario chiamare _findclose dopo che si smette dell'una o l'altra _findfirst o _findnext funzione (o il variant).Ciò liberare le risorse utilizzate da queste funzioni nell'applicazione.
le variazioni di queste funzioni con w il prefisso è versione a caratteri estesi, in caso contrario, sono identiche alle funzioni a byte singolo corrispondenti.
Le variazioni di queste funzioni supportano il 32 bit o i tipi di tempo a 64 bit e a 32 bit o le dimensioni del file a 64 bit.il primo suffisso numerico (32 o 64) indica la dimensione del tempo utilizzato; il secondo suffisso è uno i32 o i64, che indica se le dimensioni del file sono rappresentate come una piattaforma a 32 bit o Integer a 64 bit.Per informazioni sulla definizione delle versioni supportano il 32 bit e i tipi e le dimensioni del file di tempo a 64 bit, vedere la tabella seguente.Le variazioni che utilizzano un tipo di tempo a 64 bit concedono le date di file-creazione da esprimere su con il 23:59: 59, il 31 dicembre, 3000, UTC, mentre quelli utilizzando tempo a 32 bit tipo solo per rappresentare le date con il 19:14: 7 gennaio 18, 2038, UTC.La mezzanotte, il 1° gennaio 1970, è il limite inferiore dell'intervallo di dati per tutte queste funzioni.
A meno che non esista un motivo specifico per utilizzare le versioni che specificano le dimensioni di tempo in modo esplicito, utilizzare _findnext o _wfindnext in alternativa, se è necessario supportare le dimensioni del file maggiori di 3 GB, utilizzare _findnexti64 o _wfindnexti64.Tutte queste funzioni utilizzano il tipo di tempo a 64 bit.Nelle versioni precedenti, queste funzioni che hanno utilizzato un tipo di tempo a 32 bit.Se si tratta di una modifica sostanziale per un'applicazione, è possibile definire _USE_32BIT_TIME_T per ottenere il comportamento precedente.se _USE_32BIT_TIME_T viene definito, _findnext, _finnexti64 e le versioni corrispondenti Unicode utilizzano un'ora a 32 bit.
Cronometrare il tipo e memorizzazione delle variazioni del tipo di lunghezza di _findnext
Funzioni |
_USE_32BIT_TIME_T definito? |
tipo di tempo |
Tipo di lunghezza del file |
---|---|---|---|
_findnext, _wfindnext |
non definito |
64 bit |
A 32 bit |
_findnext, _wfindnext |
definito |
A 32 bit |
A 32 bit |
_findnext32, _wfindnext32 |
Nessun effetto dalla definizione macro |
A 32 bit |
A 32 bit |
_findnext64, _wfindnext64 |
Nessun effetto dalla definizione macro |
64 bit |
64 bit |
_findnexti64, _wfindnexti64 |
non definito |
64 bit |
64 bit |
_findnexti64, _wfindnexti64 |
definito |
A 32 bit |
64 bit |
_findnext32i64, _wfindnext32i64 |
Nessun effetto dalla definizione macro |
A 32 bit |
64 bit |
_findnext64i32, _wfindnext64i32 |
Nessun effetto dalla definizione macro |
64 bit |
A 32 bit |
Mapping di routine a testo generico
routine di Tchar.h |
_UNICODE e _MBCS non definiti |
_MBCS definito |
_UNICODE definito |
---|---|---|---|
_tfindnext |
_findnext |
_findnext |
_wfindnext |
_tfindnext32 |
_findnext32 |
_findnext32 |
_wfindnext32 |
_tfindnext64 |
_findnext64 |
_findnext64 |
_wfindnext64 |
_tfindnexti64 |
_findnexti64 |
_findnexti64 |
_wfindnexti64 |
_tfindnext32i64 |
_findnext32i64 |
_findnext32i64 |
_wfindnext32i64 |
_tfindnext64i32 |
_findnext64i32 |
_findnext64i32 |
_wfindnext64i32 |
Requisiti
Funzione |
Intestazione di associazione |
---|---|
_findnext |
<io.h> |
_findnext32 |
<io.h> |
_findnext64 |
<io.h> |
_findnexti64 |
<io.h> |
_findnext32i64 |
<io.h> |
_findnext64i32 |
<io.h> |
_wfindnext |
<io.h> o <wchar.h> |
_wfindnext32 |
<io.h> o <wchar.h> |
_wfindnext64 |
<io.h> o <wchar.h> |
_wfindnexti64 |
<io.h> o <wchar.h> |
_wfindnext32i64 |
<io.h> o <wchar.h> |
_wfindnext64i32 |
<io.h> o <wchar.h> |
Per ulteriori informazioni sulla compatibilità, vedere compatibilità nell'introduzione.
Librerie
Tutte le versioni di Librerie di runtime del linguaggio C.
Equivalente .NET Framework
Non applicabile. Per chiamare la funzione c standard, utilizzare PInvoke. Per ulteriori informazioni, vedere Esempi di pinvoke.