For anyone still using SynthEdit modules you might notice that when you move to Cantabile 35xx x86 you get a lot of error messages like so:
This is caused by placing SynthEdit plugins in a folder that doesn’t have write access (eg: C:\Program Files\VstPlugins). The fix is to move those plugins to a writeable folder (eg: C:\VstPlugins).
Background
SynthEdit is a tool for building VST Plugins that uses other components which SynthEdit packages up into a single .dll file. When the plugin is loaded into a host program, those components are extracted to a sub-folder of the plugin.
eg: the SynthEdit module “Sam!Solo” creates a sub-folder like so:
containing modules like so:
In order for these modules to be successfully extracted, the host program must have write access to the VST plugins folder.
Why Does this Work in 32xx but not 35xx
In Cantabile 32xx the .exe file isn’t marked to support any particular version of Windows so Windows assumes it’s an older program and enables virtualization to allow writing to some Program Files directories by redirecting to a separate folder. eg: with Cantabile 3290, the .SEM files from above are actually extracted to a virtual directory:
C:\Users\brad\AppData\Local\VirtualStore\Program Files\VstPlugins\Sam!Solo1.1
Cantabile 35xx is marked to support newer versions of Windows (this is required for the per-window resolution support to work) which disables this virtualization of the Program Files directory which in turn causes the .SEM module extraction to fail because it doesn’t have write access.
What about jBridge
This only impacts Cantabile x86. When running Cantabile x64 and bridging to a SynthEdit module (SynthEdit modules are all x86 - there’s no x64 support), it’s the file compatibility of the jBridge hosting exe that determines if virtualization is enabled - currently it seems jBridged SynthEdit modules work.
The Solution
Move your SynthEdit modules to a folder that has write access and update your VST path in Cantabile appropriately.