Hey, Juce people, with a special hello to those of you developing VST hosting apps on Windows.
I’ve been having an issue with the EastWest ‘Play’ VST plugin (Version 2.1.1 of play_VST.dll) on Windows. It hangs my current app, and simply shuts down the Juce example plugin host app (juce/extras/audio plugin host).
I’m building the Juce example host app out of a juce folder fresh from the git tip at of this morning 05.23.2011, 10:30am CSD.
I can debug to the call to LoadLibrary() from within my app. Trying to step over this call hangs the process:
AudioPluginInstance* VSTPluginFormat::createInstanceFromDescription (const PluginDescription& desc)
{
...
const ReferenceCountedObjectPtr <ModuleHandle> module (ModuleHandle::findOrCreateModule (file));
static ModuleHandle* findOrCreateModule (const File& file)
{
...
f (! m->open())
bool ModuleHandle::open()
{
...
hModule = PlatformUtilities::loadDynamicLibrary (file.getFullPathName());
void* PlatformUtilities::loadDynamicLibrary (const String& name)
{
...
result = LoadLibrary (name);
HANG.
When I hit pause in the debugger I get an Alert dialog from Visual Studio which states:
“The process appears to be deadlocked (or is not running any user-mode code). All threads have been stopped.”
When I attempt to load this plugin with the Juce example host, I see the same behavior, except instead of a hand, the app simply exits.
The thread ‘Juce DSound’ (0xe50) has exited with code 16 (0x10).
The thread ‘Win32 Thread’ (0x10e0) has exited with code 16 (0x10).
The thread ‘Juce Timer’ (0x2e4) has exited with code 16 (0x10).
The thread ‘Win32 Thread’ (0x320) has exited with code 16 (0x10).
The thread ‘Win32 Thread’ (0x1014) has exited with code 16 (0x10).
The thread ‘Win32 Thread’ (0xd30) has exited with code 16 (0x10).
The program ‘[3756] Plugin Host.exe: Native’ has exited with code 16 (0x10).
My app from last year, before I switched to Juce VST hosting, does not have an issue with this plugin. Neither does any other host app that I’ve found to test with.
I have gone over my code many times, but have not been able to find any leads. Since the Juce example plugin host is also having problems with the play_VST.dll, I’m thinking this probably isn’t a result of my code. Has anyone else seen this issue?
This is especially interesting, since elsewhere on this forum it is mentioned that the EastWest Play plugin is built with a qt interface around a Juce engine.


