[Closed] [Plugin] DLU doesn't load on in Max 14
I use Visual Studio 2013, but the toolset v100. I’m currently not at work I’m not 100% sure.
How could this affect the problem?
How could this affect the problem?
NOTE:Each version of 3ds Max only supports one version of Microsoft Visual C++.
Hey, now I compiled the project with VS2010 SP1 (like required by Max 14). But still the same error.
I also used the toolset V100 for compiling before, so it should already use VS2010 for compiling even if I develop with a newer IDE. Right?
I think its really a problem of filepaths for the needed librarys. The dependeny walker misses some Max-DLLs like the core.dll, geom.dll, maxutil.dll… But they are in the main Max-folder, so they shouldn’t be missing. Is there any path wrong or not set?
Strangely the dependency walker showed the same errors at my development PC like on the other PCs (see above).
EDIT: In the help there is our problem more or less explained:
Problem 6: You have created a plug-in that runs fine on certain machines but on other machines it simply won’t load.
Solution: You probably have a missing system DLL. The easiest way to see what DLLs your plug-in requires is to use the DUMPBIN.EXE program (which comes with Visual C++ and is usually found in the bin folder) and use the /IMPORTS switch. This will tell you all of the DLLs that your DLL depends upon. Make sure the machines that need to run the plug-in have the proper DLLs.
My test plugin needs core.dll, geom.dll, maxutil.dll and ParamBlk2.dll from Max,
Kernel32.dll, User32.dll from Windows,
MSVCP100.dll and MSVCR100.dll from Visual Studio.
[i]I also used the toolset V100 for compiling before, so it should already use VS2010 for compiling even if I develop with a newer IDE. Right?
[/i]Yes, you can use a newer IDE with a older compiler.
I do this for several of my projects.
One thing – can you try and copy all the *.lib files from the max SDK lib folder into the folder where your plugin is on the machine the plugin does not work on – to see if it works then .
It might be a linking issue… (maybe try to copy them to 3dsmax root folder first).
I’m developing a bullet physics plugin ( http://bullet4max.com ) and for this one I had to include the libs, if not it just did not do anything when I triggered my functions from the physics library. It did not give any errors or anything like that.
I copied my libs to 3dsmax root and it all worked fine.
It’s a bit tricky to debug without any code etc, so we just have to try everything to get it sorted.
Also the DLL’s that dependencywalker does not find that are in your 3dsmax root folder is found by 3dsmax – so there seems to be nothing strange there.
Thanks for all your help. This is sooo strange…
Now we copied the four relevant Max-LIBs to the root folder of Max, no change.
Then we copied the two VS-DLLs to the root folder, no change.
At last we copied all needed DLLs to the plugings folder, no change.
Thats really frustrating.
The code itself is not really complex. The only external lib is boost for multithreading. It doesn’t seem to be connected with the project itself because I’m getting these errors also with the default wizard project and with a fresh compiled version of the scene manager launcher example from the Max14-samples-folder.
You copied the boost lib into 3dsmax root on that machine?
(just have to make sure). if it’s using boost it needs to find the lib that’s being used.
No, I did not. I included boost directly with the source code, so the dumpbin and Dependeny walker didn’t show boost as a dependency.
But you are right: this could have been a problem. But unfortunately the other projects without any external lib except maxlibs don’t work either.
My next plan is currently to compile the project in a clean virtual machine to make sure it’s not because of wrong OS-settings.
Hey, I’m back with an unsatifying solution:
I spend a lot working hours setting up a virtual machine with VS2010, Windows SDK 7.1, VS2013 and Max14. Finally there the default wizard project builds fine and the plugin works on all PCs as intended. So I have no idea whats wrong with my PC but at least I know the source of this problem.
So thanks for your help. I’ve learned a lot about the SDK and DLLs.