Plugin not working on client's machines



  • On 16/05/2018 at 09:35, xxxxxxxx wrote:

    User Information:
    Cinema 4D Version:   R18, R19 
    Platform:   Windows  ;   
    Language(s) :     C++  ;   PYTHON  ;

    ---------
    Hello PluginCafe,

    I have a very, very odd problem, being, that my plugin which I am developing for my clients works (the problem especially is, that it LOADS) on all of my machines. But it does not work on any of my clients machines. 
    Which is odd.

    I compiled the plugin both for Windows 8.1 and Windows 10 (always for R18 and 19), so that my clients can try the different versions for their different machines. And it works just fine for me.
    But it does not even load (nor show any error messages in the console) on my clients machine.
    They have used the right version of the plugin for their corresponding machine and version.

    The plugin does use some external .dll files, which are placed correctly within the folder hierachy. 
    No errors, nothing.

    Has anybody encountered a similar issue, or knows where this issue comes from?

    I really hope somebody can help me with that!

    thanks in advance and best regards, 
    Florian



  • On 16/05/2018 at 12:14, xxxxxxxx wrote:

    Hi,

    First of all check that you are distributing release builds of your plugin. Customer machines do not have the MSVC debug runtime dlls and so will fail to load.

    Also in my experience C4D on windows is very particular about where it looks for plugin dll dependencies. If you're linking with import libs to other dlls, placing them in the plugin folder will not work, as C4D does not include the plugin directory in the dll search path. To test this try moving these dlls temporaritly to the same folder the C4D executable. If the plugin loads then was the cause.

    In general a quick way to diagnose dll dependecy probems is to use the nifty Dependency Walker tool. As the name suggests it will show you the dependency chain of a dll or exe file, and highlight what is missing.

    Cheers,

    Kostas


Log in to reply