Funzione FltParseFileName (fltkernel.h)

FltParseFileName analizza l'estensione, il flusso e il componente finale da una stringa di nome file.

Sintassi

NTSTATUS FLTAPI FltParseFileName(
  [in]      PCUNICODE_STRING FileName,
  [in, out] PUNICODE_STRING  Extension,
  [in, out] PUNICODE_STRING  Stream,
  [in, out] PUNICODE_STRING  FinalComponent
);

Parametri

[in] FileName

Puntatore a una struttura UNICODE_STRING contenente la stringa da analizzare come nome file. Questo parametro è obbligatorio e non può essere NULL.

[in, out] Extension

Puntatore a una struttura UNICODE_STRING che riceve l'estensione analizzata dalla stringa FileName . Se non viene trovata alcuna estensione, FltParseFileName imposta Extension.Buffer su NULL e Extension.Length su zero. In caso contrario, Extension.Buffer riceve un puntatore all'inizio dell'estensione in FileName.Buffer e Extension.Length riceve la lunghezza, in byte, dell'estensione. Questo parametro è facoltativo e può essere NULL.

[in, out] Stream

Puntatore a una struttura UNICODE_STRING che riceve il nome del flusso analizzato dalla stringa FileName . Se non viene trovato alcun nome di flusso, FltParseFileName imposta Stream. Buffer su NULL e Stream. Lunghezza su zero. In caso contrario, Stream. Il buffer riceve un puntatore all'inizio del nome del flusso in FileName.Buffer e Stream. La lunghezza riceve la lunghezza, in byte, del nome del flusso. Questo parametro è facoltativo e può essere NULL.

[in, out] FinalComponent

Puntatore a una struttura UNICODE_STRING che riceve il componente del nome finale analizzato dalla stringa FileName . Se non viene trovato alcun componente finale, FltParseFileName imposta FinalComponent.Buffer su NULL e FinalComponent.Length su zero. In caso contrario, FinalComponent.Buffer riceve un puntatore all'inizio del componente finale in FileName.Buffer e FinalComponent.Length riceve la lunghezza, in byte, del componente finale. Questo parametro è facoltativo e può essere NULL.

Valore restituito

FltParseFileName restituisce STATUS_SUCCESS o un codice di errore NTSTATUS appropriato.

Commenti

FltParseFileName analizza l'estensione, il nome del flusso e il componente finale da una stringa di nome file. Il nome del file non deve essere normalizzato o un nome di percorso completo. Se il nome del file è un nome di file breve, FltParseFileName analizza solo l'estensione.

Di seguito è riportato un esempio di nome normalizzato per un file locale:

\Device\HarddiskVolume1\Documents and Settings\MyUser\My Documents\Test Results.txt:stream1

FltParseFileName analizza questo nome normalizzato come indicato di seguito:

Estensione: "txt"

Stream: ":stream1"

FinalComponent: "Test Results.txt:stream1"

Di seguito è riportato un esempio di nome breve per un file:

TestRe~1.txt

FltParseFileName analizza questo breve nome come indicato di seguito:

Estensione: "txt"

Stream: NULL

FinalComponent: "TestRe~1.txt"

Per altre informazioni sulla normalizzazione dei nomi file e sull'analisi dei nomi file, vedere FLT_FILE_NAME_INFORMATION.

Per analizzare il contenuto di una struttura FLT_FILE_NAME_INFORMATION, chiamare FltParseFileNameInformation.

Requisiti

Requisito Valore
Client minimo supportato Disponibile in Windows XP con Service Pack 2 (SP2) e versioni successive del sistema operativo Windows.
Piattaforma di destinazione Universale
Intestazione fltkernel.h (includere Fltkernel.h)
Libreria FltMgr.lib
DLL Fltmgr.sys
IRQL <= APC_LEVEL

Vedi anche

FLT_FILE_NAME_INFORMATION

FltParseFileNameInformation

UNICODE_STRING