Not much to say, if it can't load a dll for any reason it just says "not compatible"
The instructions I was given from the lead developer, he's not often wrong.
It been a bit of a uphill battle, this is the first 3rd party lib I've ever used, even that took a few hours, a few attempts and 40 tabs to get right in debug.
I'm internet self-taught so, make a calculator, hello world, yeah easy, give me a working framework and I can do stuff. but real world it gets too abstract too quickly.
If it's a Debug vs. Release problem, then one possibility is it's differences in your project settings for Debug vs. Release. For example, maybe you're building release as 32-bit, but debug as 64-bit. You may need to individually configure them, and make sure they match in the right places. If feasible, try pasting the project file's XML for somebody to look at.
What's likely happening is that during the DLL load procedure some dependency is not being resolved and the load fails. You can use Process Monitor from SysInternals to debug this. First configure it to filter out all processes except VitualDJ, then run the program and get it to fail to load the DLL. Then search in the log the LoadLibrary event with the path to your DLL and start searching forward from there. Pay attention while reading, because events from parallel threads will appear interleaved in the log.