Problems with RegisterMessagePlugin in R20



  • in previous versions
    RegisterMessagePlugin(ID_MTIMER, "", 0, NewObj(MTimerMessage));
    where MTimerMessage has public inheritance from MessageData, was working ok for me.

    Unfortunatly it doesn't longer compiles *no suitable conversion function from "maxon::ResultPtr<MTimerMessage>" to "MessageData " exists C4D_actual_plugin

    Any tip on this?

    Thank you in advance


  • Global Moderator

    Hi,

    in Cinema 4D R20 the return value of NewObj() has changed. It now returns a ResultPtr<>. This simply means you need to properly handle the error case.

    In our C++ SDK documentation this is covered on the API Transition page and in more detail in the Error Handling manual.

    In the microsdk example there's a snippet showing one way to handle the error.

    One last request, please consider tagging your posts (as I did now here), so we can keep this forum tidy and easy to search.

    Cheers,
    Andreas