Announcement

Collapse
No announcement yet.

Partner 728x90

Collapse

DLL Creation, Testing, and Distribution

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

    DLL Creation, Testing, and Distribution

    After reading the help regarding DLL creation and distribution and trying a few myself, I must say it is not a very straightforward process. Furthermore, the requirement to move code files in and out of the \Custom\Indicator file to facilitate coding,DLLcreation, and DLL testing is excessive, not to mention prone to inadvertent overwriting of source code orother unintended consequences.

    It also seems to me that what is called a "vendor file" can really be called a "distribution file" sincedevelopers my not what to"vend" their workbut simplyprotect theirIP interests. In addition,developer distribution objectivesmay differ, for example:
    • Developer/Vendor centric - alldeveloper indicators in oneDLL
    • Indicatorcentric - a DLL for eachindicator
    • Suite centric - a DLL for each collection ofindicators
    • User centric - a customized DLL for each user to facilitate user authentication.
    I am sure there are pros / cons to different methods.

    The help was silent on where to place the "distribution" file so as not to confict with the DLLcompile process. I found it best to savethese files above the \bin\Custom folder in its own \Distribution folder during this process. Of course, if you want to test the DLL you've just created, as if you were in a user's environment, it would need to be moved back to the \bin\Custom folder and the original source code in \bin\Custom\Indicator placed elsewhere above the \bin\Custom folder.

    I also found it curious that once the distribution file and DLLare distributed, the end user would need toedit another indicator (not the one they just received but any other one) in order to right click on the chart to reference the DLL globally. If its a global reference, why not just add a "3rd Party Registration" selection of the Tools command on the Control Center.

    I would be very interested in learning more best practices that are in use bythe NinjaTeam or other users/developers regarding effective means to manage code, distribution files, and DLLs in this environment to streamline the process and mitigate the need for moving code about yetbe developer and end user friendly.

    I am a big fan of NinjaTrader,havebeen a DOMuser for a while, andam making great progress coming up to speedwithNinjaScript development.However, the DLL creation and distribution process was an unexpected bump in what hasbeen anotherwise smooth and enjoyablelearning curve.

    Regards,

    Whitmark



    whitmark
    NinjaTrader Ecosystem Vendor - Whitmark Development

    #2
    imported post

    Hi Whitmark,

    For sure there can be improvements made in this area. This was an area we decided to leave as is for now. As you know, sooner or later you have to draw the line and get a product into production. Thisshortcomingis recognized and on our list for development in the next major development cycle.

    At this time, any and all ideas are welcome.


    Ray
    RayNinjaTrader Customer Service

    Comment

    Latest Posts

    Collapse

    Topics Statistics Last Post
    Started by Geovanny Suaza, 02-11-2026, 06:32 PM
    0 responses
    558 views
    0 likes
    Last Post Geovanny Suaza  
    Started by Geovanny Suaza, 02-11-2026, 05:51 PM
    0 responses
    324 views
    1 like
    Last Post Geovanny Suaza  
    Started by Mindset, 02-09-2026, 11:44 AM
    0 responses
    101 views
    0 likes
    Last Post Mindset
    by Mindset
     
    Started by Geovanny Suaza, 02-02-2026, 12:30 PM
    0 responses
    545 views
    1 like
    Last Post Geovanny Suaza  
    Started by RFrosty, 01-28-2026, 06:49 PM
    0 responses
    547 views
    1 like
    Last Post RFrosty
    by RFrosty
     
    Working...
    X