Using the FSD Manager
The FSD Manager, which is contained in Fsdmgr.dll, manages all system interaction with installable FSDs. It creates file handles, registers volumes, installs necessary functions, and maps application calls to the installed functions. The FSD Manager invokes these functions when an application accesses folders and files on mounted volumes using the file system functions.
The name of the DLL and the names of the functions it exports start with the prefix FSD_ followed by the name of the associated installable file system and are case-sensitive. For example, FSD_CreateDirectoryW or FSD_RemoveDirectoryW. Aside from the FSD_ prefix, you can name your FSD anything you want.
Applications accessing an installable file system use file system functions. For example, when an application creates a directory on a device, it calls the CreateDirectory function. The FSD Manager then invokes the function supplied in the FSD for the device.
You can use the following functions to develop an FSD:
- FSDMGR_CreateFileHandle
- FSDMGR_CreateSearchHandle
- FSDMGR_DeregisterVolume
- FSDMGR_GetDiskInfo
- FSDMGR_GetVolumeName
- FSDMGR_ReadDisk
- FSDMGR_ReadDiskEx
- FSDMGR_RegisterVolume
- FSDMGR_WriteDisk
- FSDMGR_WriteDiskEx
These functions isolate the FSD from both the OS and the device drivers. In addition to providing these functions, Fsdmgr.dll also provides entry points to create the handles to be passed back to an application's CreateFile and FindFirstFile requests. These services are prototyped in Fsdmgr.h.
Last updated on Wednesday, April 13, 2005
© 2005 Microsoft Corporation. All rights reserved.