Junctions cause newly saved presets to not show up immediately

Using Cubase 10.0.20 under Windows 10, when I save a preset (VST3 Preset or FX Chain Preset), the saved preset thereafter does not show up in the list of presets immediately. To get the preset to show up, I have to either restart Cubase or rescan the disk in MediaBay.

CAUSE: I found that the cause for this behaviour is that my Documents folder (C:\Users\MyUser\Documents) is a junction that points to another drive (in my case F:\Users\MyUser\Documents). The presets are correctly saved in “Documents\VST3 Presets” or “Documents\Steinberg\FX Chain Presets”, but they just aren’t immediately recognised by Cubase, apparently because of the junction in the path. (I verified that not using a junction on the same system resolves the issue.)

It would be great if this issue could be resolved in a future update. I have had this issue for years, and the MediaBay rescan workaround just isn’t optimal.
I would also be happy with a workaround that would allow me to make another directory (with no junctions in its path) the default storage location for my presets, but I have found no way of configuring these paths.

Hi,

What symbol is it exactly, which makes the problem? Could you type the symbol here, please?

What symbol do you mean?
The problem is not due to a symbolic link but a directory junction. You can create such a junction as follows:

In your home directory (e.g. “C:\Users\MyUser”), do something like the following:

move Documents Documents.old
mklink /J Documents F:\MyTarget

Then Cubase will correctly save presets in “C:\Users\MyUser\Documents\VST3 Presets”, which then corresponds to “F:\MyTarget\VST3 Presets”, but they will not show up immediately, as I described in my original post.

So is there any solution to this problem?
A way to work around it would be to configure the folder that Cubase uses to store the user’s VST3 presets (which is “Documents\VST3 Presets” under Windows by default)? Is there any way to configure it?

Hi,

I’m sorry, I probably still doesn’t understand the junction process technically.

Is it something like an alias older? Is the problem you don’t want to store the presets to the C drive (because of space on the drive), so you do something to store it other drive?

A junction is a directory link which points to another folder in the file system (which can be on another drive). Junctions are usually transparent to software, i.e. software doesn’t usually need to handle junctions in any special way, as junctions behave just like regular folders.
However, in Cubase, newly created user presets (e.g. presets written to Documents\VST3 Presets) are not automatically added to Cubase’s MediaBay database if the folder Documents is actually a junction; a restart of Cubase or a manual MediaBay scan will make the presets appear, however.
Cubase must use some low-level mechanisms in order to “achieve” that junctions do not behave in the same way as regular folders. I have validated that my problem disappears as soon as Documents is converted to a regular folder.

There are at least two ways in which this could be fixed:
(a) Make the mechanisms that automatically update Cubase’s MediaBay database as new presets are created work for junctions.
(b) Allow users to configure where user presets are stored (such that I can directly specify the target of the junction, which Cubase should be able to handle without any problems). Is there any way of configuring this?

In case you are interested in my motivations, I use a junction to another drive which is physically a RAID mirror, such that all my important files are always present on two physical drives. (I have had way too many hard drives die on me, and I don’t particularly trust my system SSD to not die either.)