Skip to content

Latest commit

 

History

History
155 lines (94 loc) · 5.47 KB

nf-fltkernel-fltparsefilenameinformation.md

File metadata and controls

155 lines (94 loc) · 5.47 KB
UID title description old-location tech.root ms.date keywords ms.keywords req.header req.include-header req.target-type req.target-min-winverclnt req.target-min-winversvr req.kmdf-ver req.umdf-ver req.ddi-compliance req.unicode-ansi req.idl req.max-support req.namespace req.assembly req.type-library req.lib req.dll req.irql targetos req.typenames f1_keywords topic_type api_type api_location api_name
NF:fltkernel.FltParseFileNameInformation
FltParseFileNameInformation function (fltkernel.h)
FltParseFileNameInformation parses the contents of a FLT_FILE_NAME_INFORMATION structure.
ifsk\fltparsefilenameinformation.htm
ifsk
04/16/2018
FltParseFileNameInformation function
FltApiRef_p_to_z_37671009-fb66-4dba-ae61-23801aef9f21.xml, FltParseFileNameInformation, FltParseFileNameInformation function [Installable File System Drivers], fltkernel/FltParseFileNameInformation, ifsk.fltparsefilenameinformation
fltkernel.h
Fltkernel.h
Universal
Available in Windows XP SP2 and later versions of the Windows operating system.
FltMgr.lib
Fltmgr.sys
<= APC_LEVEL
Windows
FltParseFileNameInformation
fltkernel/FltParseFileNameInformation
APIRef
kbSyntax
DllExport
fltmgr.sys
FltParseFileNameInformation

FltParseFileNameInformation function

-description

FltParseFileNameInformation parses the contents of a FLT_FILE_NAME_INFORMATION structure.

-parameters

-param FileNameInformation [in, out]

Pointer to an FLT_FILE_NAME_INFORMATION structure returned by a previous call to FltGetDestinationFileNameInformation, FltGetFileNameInformation, FltGetFileNameInformationUnsafe, or FltGetTunneledName. This parameter is required and cannot be NULL.

-returns

FltParseFileNameInformation returns STATUS_SUCCESS or an appropriate NTSTATUS error code.

-remarks

FltParseFileNameInformation parses the Name member of a FLT_FILE_NAME_INFORMATION structure and uses the results to set the values of the Volume, Share, Extension, Stream, FinalComponent, ParentDir, and NamesParsed members of this structure. For more information, see FLT_FILE_NAME_INFORMATION.

The following is an example of a normalized name for a remote file:

\Device\LanManRedirector\MyServer\MyShare\Documents and Settings\MyUser\My Documents\Test Results.txt:stream1

FltParseFileNameInformation parses this normalized name as follows:

Volume: "\Device\LanManRedirector"

Share: "\MyServer\MyShare"

Extension: "txt"

Stream: ":stream1"

FinalComponent: "Test Results.txt:stream1"

ParentDir: "\Documents and Settings\MyUser\My Documents"

The following is an example of an opened name for a local file:

\Device\HarddiskVolume1\Docume~1\MyUser\My Documents\TestRe~1.txt:stream1:$DATA

FltParseFileNameInformation parses this opened name as follows:

Volume: "\Device\HarddiskVolume1"

Share: NULL

Extension: "txt"

Stream: ":stream1:$DATA"

FinalComponent: "TestRe~1.txt:stream1:$DATA"

ParentDir: "\Docume~1\MyUser\My Documents"

The following is an example of a short name for a file:

TestRe~1.txt

FltParseFileNameInformation parses this short name as follows:

Volume: NULL

Share: NULL

Extension: "txt"

Stream: NULL

FinalComponent: "TestRe~1.txt"

ParentDir: NULL

The caller must not modify the contents of the FileNameInformation structure, because the Filter Manager caches this structure so that all minifilter drivers can use it.

Note  If the caller is trying to parse a string, not an FLT_FILE_NAME_INFORMATION structure, use the FltParseFileName routine instead of FltParseFileNameInformation.
 

-see-also

FLT_FILE_NAME_INFORMATION

FltGetDestinationFileNameInformation

FltGetFileNameInformation

FltGetFileNameInformationUnsafe

FltGetTunneledName

FltParseFileName