EldoS | Feel safer!

Software components for data protection, secure storage and transfer

Drive letter in use

Also by EldoS: CallbackProcess
A component to control process creation and termination in Windows and .NET applications.
#17052
Posted: 07/15/2011 06:50:01
by Robert Baer (Basic support level)
Joined: 11/08/2010
Posts: 46

Hello Victor,

I have tested this behaviour with Windows 7 x64 and Windows 2003 Server x64.

If I specify drive letter "C:" in Mapper sample, the message "Cannot create a file when that file already exists." is shown. If I specify drive letter "U:" (which is a connect network drive) the letter is added to the list of mounting points and no message is shown.

I can reproduce this behaviour with version 3.1.89 and 3.2.93 of CbFS.

If I specify a network share (e.g. "U:;;VsShare") my virtual drive is accessible via "\\localhost\VsShare" but not visible in my list of drives.

Does this information help you reproducing the issue?

Regards,
Robert
#17054
Posted: 07/15/2011 09:49:50
by  Victor Voytko
Actually not quite.
The situation you have discribed can be possible in the case if your already existing network drive was created as global mounting point, without dependence of any user's session.

Quote
Robert Baer wrote:
there are two ways I am calling AddMountingPoint:

Code AddMountingPoint("T:", CBFS_SYMLINK_SIMPLE, NULL)

or Code AddMountingPoint("T:;;VsShare", CBFS_SYMLINK_NETWORK | CBFS_SYMLINK_NETWORK_WRITE_NETWORK_ACCESS | CBFS_SYMLINK_NETWORK_ALLOW_MAP_AS_DRIVE, NULL)


This means you are creating the mounting point for your local user session. Local and global sessions have separate namespaces for drives. So it is possible to create mounting points with equal names in different sessions.

The question is - what way your existing network drive was created? This could help me to reproduce the issue.
#17057
Posted: 07/15/2011 10:48:34
by  Victor Voytko
Sorry, I was wrong in my previous post.
Your code
Code
AddMountingPoint("T:", CBFS_SYMLINK_SIMPLE, NULL);

leads to the creation of the global mounting point.

At the same time your existing network drive probably was created for a local user session. This coincidence lets to be the issue discribed by you.
Please try to create the mounting point by Mapper sample like this
Code
AddMountingPoint(MountingPoint, CBFS_SYMLINK_SIMPLE | CBFS_SYMLINK_LOCAL, NULL);

In this case you should get an exception if drive name will be already in use by an existing network drive.
#17064
Posted: 07/18/2011 03:50:29
by Robert Baer (Basic support level)
Joined: 11/08/2010
Posts: 46

Dear Victor,

thanks for your replies and explanations. The problem is caused by different user sessions as the drive is provided by a windows service. Of course he cannot see into my local session if the drive letter is in use by a network drive.

Regards,
Robert

Reply

Statistics

Topic viewed 3095 times

Number of guests: 1, registered members: 0, in total hidden: 0




|

Back to top

As of July 15, 2016 EldoS Corporation will operate as a division of /n software inc. For more information, please read the announcement.

Got it!