I ran into a problem, when trying to get the JuceDemo Plugin running as a 64bit VST Plugin on WinXP 64bit. The host opens up but as soon as I load the plugin into a track the host just quits.
I am compiling with VisualStudio2010 on Win7 64bit. The plugin works fine on Win7, but when I try to open the 64bit version on WinXP it crashes the host.
It probably has to be something in the project settings in VS2010, so here´s what I already tested:
.NET Framework 3.5 & 4
WinSDK 7.1, v100 & v90
I also did a test with VS2008 on WinXP which caused the same problem.
I thought maybe it´s helpful, if I post some more info:
First of all I noticed, the the Demo Plugin opens in the JuceDemo Plugin Host without causing any problems.
But if I open it in ViennaEnsemblePro x64 it just quits the host.
I used VS2008 as a Debugger and the point at which VEPro is quitting is:
“Type& get() const no except” in “juce_ThreadLocalValue.h” and the problem seems to be somewhere in juce::TimerThread
I already deleted all the code that belongs to the Timer in the Juce Demo Plugin but that didn´t change anything.
Thanks for the answer!
I am pretty new to debugging, I am basically just setting various Breakpoints and see what happens when I comment some stuff out, but I got some new results:
After I commented out startTimer() in both juce_VST_Wrapper.cpp and juce_win32_Windowing.cpp the plugin started just fine, so now I know it´s a problem with the Timer and it seems to be somehow GUI related (in juce_VST_Wrapper startTimer() is called from the dispatcher with opCode == effEditOpen)
Nevertheless I still don´t have a clue, why this happens only on XP64bit and how to fix it.