File System Filters (Windows CE 5.0)
A file system filter is a dynamic-link library (DLL) that exports file system entry points. These entry points map to the standard file system functions, such as CreateFile and CreateDirectory. Because file system filters sit on top of the file system and intercept file system calls, you can use this mechanism to encrypt, compress, or virus scan any fsdmgr loaded file system. Multiple filters can exist on any fsdmgr loaded file system performing any combination of file manipulation before the file system sees the call.
File system filters are lightweight file system drivers (FSDs), except file system filters expose FSD_HookVolume and FSD_UnhookVolume. FSDs expose FSD_MountDisk and FSD_UnmountDisk. For more information on file system drivers, see Creating FSDs.
The FSD Manager loads FSDs and file system filters.
To build a file system filter list, search the following registry paths:
HKEY_LOCAL_MACHINE\System\StorageManager\AutoLoad\FileSystem\Filters
- or -
HKEY_LOCAL_MACHINE\System\StorageManager\Profiles\ProfileName\FileSystem\Filters
HKEY_LOCAL_MACHINE\System\StorageManager\FileSystem\Filters
HKEY_LOCAL_MACHINE\System\StorageManager\Filters
FileSystem is the name of the file system in the registry. Possible values are FATFS, UDFS, RELFSD, and so on.
ProfileName is the name of the profile. AutoLoad is a special profile. You can load file system filters after loading FSDs with the AutoLoad key. By supplying the AutoLoad key and the name of the file system, FileSys.exe loads the installable file system.
If there is a file system filter in HKEY_LOCAL_MACHINE\System\StorageManager\AutoLoad\FileSystem\Filters or HKEY_LOCAL_MACHINE\System\StorageManager\Profiles\ProfileName\FileSystem\Filters, then all occurrences of the file system loaded under the profile get the filter.
If there is a file system filter in HKEY_LOCAL_MACHINE\System\StorageManager\FileSystem\Filters, then all occurrences of the file system get the filter.
If there is a file system filter in HKEY_LOCAL_MACHINE\System\StorageManager\Filters, then all file systems get the filter.
To set up a file system filter using any of the above registry keys, append your FilterName, DLL value, and Order value to the Filters key as shown in the following example.
[HKEY_LOCAL_MACHINE\System\StorageManager\...\Filters\FilterName]
"dll"="filter.dll"
"Order"=dword:x
The file system filter stack is then built using all combinations of the registry paths. The order of the file system filter stack is determined by Order. If the order is not specified, the order is undefined.
Note File system filters cannot be used with the object store. For more information on the object store, see Object Store.
See Also
File System Filter Samples | Storage Manager | Partition Driver | Partition Manager
Send Feedback on this topic to the authors