-
Notifications
You must be signed in to change notification settings - Fork 52
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
VSTPluginContext Dispose issue #7
Comments
Hum... I just get the same crash error code, but on creating VstPluginContext with TAL-Flanger.dll.
Does the problem come from my config ? I am on VS2015, with vst.netx86 (nuget pkg) on Win7 Pro. |
Do you have a stack trace? |
I had the same problem earlier today when disposing a VSTPlugin - it was a segmentation fault. Currently trying to build vst.net with debugging symbols to get more insight. |
In my case, the problem was hard to track down, but simple to fix: My project did use the .NET Framework 4.7. It is required to use the .NET Framework 4.0. A simple test application with nothing more than loading the VST and disposing it right afterwards helped me reproduce the issue. 4.7 -> crash, 4.0 -> works. |
Okay, I did some further testing. I built the sample Jacobi VST host. It immediately crashes when loading the Novation V-Station DLL. Anything other than .NET Framework 4.0 and only in 64 Bit mode (32bit works with 4.7.2) Output on the CLI:
|
That is disturbing... |
No, but I'm not sure if Visual Studio has stack traces enabled by default or if I ned to enable it somewhere. I just started with Windows Development and Visual Studio a few days back (working/developing mostly on Linux, except for music) so there's still lots to learn ;) |
Look in the project settings of your managed host and select the native debugging option. Run in debug (F5) and do the thing to make it crash. It should now break on the exception and give you a call stack. |
Here's the trace I got out of it:
|
Did you build Jacobi.Vst.Samples.Host with x64 or AnyCpu? |
I originally built it with x64, but I can also confirm that the same issue occurs with AnyCpu. I also did compare the loaded modules between both Most stuff I write in this issue is for documentation purposes while I debug along, so no need to reply to every post ;) |
Surprise: I just compiled everything on a Windows 7 machine and I could not force the app with .NET 4.7.2 to crash when loading V-Station. Investigation paths:
|
For documentation purposes, the V-Station plugin Version 2.1 crashes. I downloaded a trial version of V-Station 2.4 from Plugin Boutique, it works, as well as Version 2.6 directly from Novation (which is a bit hard to find on their site). But since V-Station 2.1 is literally the first plugin I tested my project against, and it loads fine in all other VST hosts, I'll try to investigate this further - chances are high that this issue also occurs for other plugins. |
The |
Ha, I'm glad I wasn't the only one who fell for this trap ;) Actually Windows 64 bit DLLs are in Windows\System32 and 32-bit DLLs are in Windows\SysWOW64 That's a very awkward compatibility layer you have there, Microsoft ;) Source: https://stackoverflow.com/questions/1855042/system32-folder-on-a-64-bit-system) |
I do not mean where the dll is located but what type of dll was loaded (x64 or 32). There are flags in the PE header that indicate that. |
It's x64. I haven't figured out what exactly causes the crash so far, but I decided to skip it because each and every other plugin works fine for me. I just have to figure out a way to detect the crash and handle it. |
Hi !
I am testing vst.net.
For the moment, i just get plugins infos through VstPluginContext like that :
vstName = ctx.PluginCommandStub.GetProductString(); vstVendor = ctx.PluginCommandStub.GetVendorString(); vstVersion = ctx.PluginCommandStub.GetVendorVersion(); vstIsSynth = ctx.PluginInfo.Flags.HasFlag(Jacobi.Vst.Core.VstPluginFlags.IsSynth); ctx.Dispose();
It works well on many plugins, but i get a strange Visual Studio crash with an error code 1073741855 with a few other plugins.
My debug seems to show that the Dispose method causes the crash.
I get the problem with HGFortune Alphatron. (http://www.vst4free.com/free_vst.php?id=1033)
The text was updated successfully, but these errors were encountered: