I am interested in developing an AutoCAD plugin and am trying to understand the relationships between several different types of AutoCAD plugin files:

  • Managed DLLs that ship with AutoCAD plugins
  • ARX files that ship with AutoCAD plugins
  • CUIX files that ship with AutoCAD plugins

From what I can tell these three files are all inter-related and work together to initialize and load a plugin, I'm just not seeing the forest through the trees as to what information each file type contains, which files loads or depends on the others, etc.

It sounds like a plugin's core functionality is supposed to go inside the ARX file, and written in C++ and compiled for the native/target platform.

It also sounds like, at startup, AutoCAD loads its plugin DLLs, which are all managed .NET libraries (typically written in C#), and in turn they invoke their native/compiled respective ARX files. As to where the CUIX file comes into play, I still have no idea.

Can anyone help explain the relationships & dependencies of these files, and what types of code/logic/data goes inside of them? Thanks in advance!


1 Answer 1


According to Autodesk's website, an ARX file is basically a DLL but with a different extension. It is a plugin developed with the ObjectARX API. I don't really know if there is a significant distinction from a DLL, I have only ever written plugins using DLLs and loaded them using the NetLoad command.

A CUIx file is just a user interface customisation file. When you customise you UI elements and workspace, you can export this file to use on other PCs or as a backup for future use.

You can, however, control the CUI programatically in order to provide contextual UI updates to augment the user experience of your plug-ins.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.