AutoCAD has provided so called AutoLoader for a while. It is announced to be environment friendly (no need to mess up the Windows Registry anymore), support multiple versions, support both AutoCAD and its flavors (such as AutoCAD Mechanical and AutoCAD Architecture) at the same time in a single place, support various AutoCAD applications such as .NET, ARX, DBX, and AutoLISP, support multiple Operating Systems (such as Windows 64, Windows 32, and even Apple Mac), and more.
It sounds huge and complex, but in fact, it is nothing but an XML file that is supposed to specify what the application/addin/plugin is, what it does, and what it needs. That is about it in a single sentence.
Though simple, it has many subtle details for us to sort out due to lack of good documentation, not open at all the AutoLoader schema if any, and far from set yet at this time. Thus, mysteries about the AutoLoader are here and there in spite that the XML format itself is not a thing at all to most developers.
From this post on, let us look at those subtle matters about AutoCAD AutoLoader one by one.
In this post, let’s look at a simple working AutoLoader sample first. Please copy and paste the following XML content to a file and name it as PackageContents.xml first.
<?xml version="1.0" encoding="utf-8"?>
<ApplicationPackage xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"
<RuntimeRequirements OS="Win64" Platform="AutoCAD" SeriesMin="R18.0" SeriesMax="R18.2" />
AppDescription="This is assembly TestApp."
<Command Local="Command1" Global="Command1" />
Then please create a folder and put the AutoLoader into it:
Next, copy the TestApp.dll assembly which has defined a command named Command1 in a command group named CmdGroup1 as specified in the AutoLoader to the following sub folder:
Now we are ready to go. Launch AutoCAD 2012 and run the command:
By the way, the TestApp project and the sample command were all generated by the leading edge AutoCAD .NET Addin Wizard (AcadNetAddinWizard) automatically in a moment. AcadNetAddinWizard provides various project wizards, item wizards, coders including a Ribbon Creator, and widgets to help program AutoCAD .NET addins.