MyFSD_MountDisk

This function mounts the specified disk containing a file system of the type defined by the file system driver (FSD).

At a Glance

Header file: Fsdmgr.h
Windows CE versions: 2.10 and later

Syntax

BOOL MyFSD_MountDisk( HDSK hdsk);

Parameters

hdsk

Handle to the disk.

Return Values

TRUE indicates success. FALSE indicates failure.

Remarks

The FSD must be able to cope with MyFSD_MountDisk being called redundantly. It must determine from the media itself, not the value of hdsk, whether the disk is already mounted. This is required because the user media may have been removed or may have changed slots while the system was powered off. The value of hdsk has meaning only to FSDMGR functions, not to the FSD.

Use the FSDMGR_ReadDisk and FSDMGR_WriteDisk functions for all input/output to the mounted disk.

A definition file (.def) for the MyFSD.dll file must export the MyFSD_MountDisk function as FSD_MountDisk When determining how to load the FSD, Device.exe looks for FSD_MountDisk.

All FSD functions can be called reentryly, therefore, FSD developers must take this into account when developing an FSD.

The Fsdmgr component is a dynamic-link library (DLL) that manages all operating system interaction with installable files systems. Each installable file system requires an FSD, which is a DLL that exports an API needed to support an installable file system. The name of the DLL for the FSD and the names of the functions it exports start with the name of the associated installable file system. For example, if the name of file system is MyFSD, then its DLL is MyFSD.dll and its exported functions are prefaced with MyFSD_*.

Fsdmgr provides service functions to FSDs. The FSDMGR_RegisterVolume, FSDMGR_CreateFileHandle, and FSDMGR_CreateSearchHandle functions record a DWORD of volume-specific data the FSD needs to keep associated with volume. This volume-specific data is passed as the first parameter of these three functions.

Applications that access an installable file system use standard Win32 functions. For example, when an application wants to create a folder on a device that contains an installable file system, it calls CreateDirectory. Fsdmgr recognizes that the path is to a device containing an installable file system and calls the appropriate function, which in the case of the MyFSD file system is MyFSD_CreateDirectoryW. That is, the application calls CreateDirectory, causing Fsdmgr to call MyFSD_CreateDirectoryW.

See Also

MyFSD_UnmountDisk, FSD_MountDisk