Why is mounting point I added not visible in Explorer?

Explorer will update information about existing mount points only after it receives the WM_DEVICECHANGE message. This message is broadcast automatically by CBFS Connect. However, if you are adding a mounting point from the system service, the message can't be broadcast: Windows doesn't allow messages to be sent between different sessions. And, Explorer is run within a different session from the service processes.
The solution is to have a helper GUI process or shell extension (loadable DLL module for Explorer) that will communicate with the service and either add the mounting point itself or broadcast the message when the mounting point is added or deleted.

Using the Included Helper Shell Extension

CBFS Connect 2.0 and later include such a helper shell extension, CBFSMntNtf*.dll. Once installed, it catches notifications of the user-mode CBFS Connect API and notifies Explorer and other applications by broadcasting the message. Your code specifies whether this helper DLL needs to be installed in parameters to the Install() method.

Surfacing a Mounting Point in a User's Session

Note that, for the mounting point to be visible to the user's session, it must be created either as a global mounting point (without the CBFS_SYMLINK_LOCAL flag) or it must be created for a particular session. In the case "local" mounting points are used, it is required to specify the AuthenticationId parameter during the AddMountingPoint call in order to create a local mounting point for a session other than the current logon session. The mount notifier helper DLL is required to be installed too. For additional information about local mounting points, see the "Mounting Points and Authentication IDs" topic in the CBFS Connect documentation.

Ready to get started?

Learn more about Callback Technologies or download a free trial.

Download Now