Maxon Developers Maxon Developers
    • Documentation
      • Cinema 4D Python API
      • Cinema 4D C++ API
      • Cineware API
      • ZBrush GoZ API
      • Code Examples on Github
    • Forum
    • Downloads
    • Support
      • Support Procedures
      • Registered Developer Program
      • Plugin IDs
      • Contact Us
    • Categories
      • Overview
      • News & Information
      • Cinema 4D SDK Support
      • Cineware SDK Support
      • ZBrush 4D SDK Support
      • Bugs
      • General Talk
    • Unread
    • Recent
    • Tags
    • Users
    • Login
    1. Maxon Developers Forum
    2. ikolev
    3. Best
    I
    • Profile
    • Following 0
    • Followers 0
    • Topics 2
    • Posts 6
    • Best 2
    • Controversial 0
    • Groups 0

    Best posts made by ikolev

    • RE: Python module load order in 2024

      Ornatrix.xdl64 doesn't load python311.dll explicitly, it depends implicitly on it.
      When C4D tries to load Ornatrix.xdl64, it fails because of the missing dependency. BTW, here's a piece of the log:

      ...
       motioncam.xdl64 with module net.maxon.c4d.motioncam
       motiontracker.xdl64 with module net.maxon.c4d.motiontracker
      WARNING: Error loading file:///C:/Program Files/Maxon Cinema 4D 2024/plugins/Ornatrix/Ornatrix.xdl64: Could not load dll because of
       Could not load python311.dll due to Windows System Error #126: The specified module could not be found. [win_dll.cpp(313)].. (file:///C:/Program Files/Maxon Cinema 4D 2024/plugins/Ornatrix/Ornatrix.xdl64) [win_dll.cpp(333)]
       Cause: Windows System Error #126: The specified module could not be found. [win_dll.cpp(327)] [general.cpp(513)]
       OrnatrixArnoldTranslator.xdl64 with module com.ephere.ornatrixarnoldtranslator
       pbd_simulations.xdl64 with module net.maxon.pbd_simulations
       python.xdl64 with module net.maxon.c4d.python
       redshift.xdl64 with module net.maxon.c4d.redshift
      ...
      

      Ornatrix.xdl64 doesn't get a chance to execute a single line of code, it doesn't load at all.
      It is possible to split the Python-dependent part of the code into a separate DLL that gets loaded implicitly by the main DLL, but this would be a lot of work.

      If, however, Maxon declare that the new behavior of 2024 is intentional and is not going to change, i.e. the Python framework will always load after the plugins, then I suppose we'll have no choice but go for this major reorganization, as I currently don't see any other solution.

      I just had another idea: copy python311.dll into plugins\Ornatrix\res\libs\win64 (where we also deploy a couple other DLLs the plugin implicitly depends on).
      First, this is a bad idea, second, C4D crashed at startup.

      posted in Cinema 4D SDK
      I
      ikolev
    • RE: Python module load order in 2024

      Thank you again, it worked. I just had to take into account that the python310.win64.framework directory is now named just win64 in Cinema 4D 2024.

      And I had to add the path to ai.dll too, because our Arnold translator had the same problem, the C4DtoA module no longer loads ai.dll on startup.

      posted in Cinema 4D SDK
      I
      ikolev