CADEx

How to Create an AutoCAD .bundle Auto-Load Package

AutoCADCivil 3D10 min
Short answer

To make AutoCAD load your plugin automatically: create a folder named YourPlugin.bundle in %APPDATA%\Autodesk\ApplicationPlugins\, drop your DLL in Contents\Windows\, and add a PackageContents.xml that names the DLL, supported AutoCAD versions, and load behaviour. AutoCAD scans this folder on every launch and loads matching bundles.

Steps

1

Create the bundle folder

Make a folder named YourPlugin.bundle in %APPDATA%\Autodesk\ApplicationPlugins\. The .bundle suffix is mandatory — AutoCAD ignores folders without it.

2

Lay out subfolders

Inside the bundle, create Contents\, then Contents\Windows\ for your DLL and any dependencies. (Cross-platform bundles add Contents\Mac\ for macOS — AutoCAD for Mac is a separate product with a smaller API.)

3

Drop in the DLL

Copy your built .dll (and any referenced DLLs) into Contents\Windows\.

4

Write PackageContents.xml

Create PackageContents.xml in the bundle root. Minimal contents: <?xml version="1.0" encoding="utf-8"?> <ApplicationPackage SchemaVersion="1.0" AppVersion="1.0" ProductCode="{GUID}" Name="YourPlugin" Description="…" Author="You"> <CompanyDetails Name="You"/> <Components> <RuntimeRequirements OS="Win64" Platform="AutoCAD*" SeriesMin="R24.0" SeriesMax="R25.0"/> <ComponentEntry AppName="YourPlugin" ModuleName="./Contents/Windows/YourPlugin.dll" AppDescription="…" LoadOnAutoCADStartup="True"/> </Components> </ApplicationPackage>

5

Restart AutoCAD

Close and reopen AutoCAD. Your plugin loads silently before the user sees the start screen. Confirm via APPLOAD → Loaded Applications.

6

Distribute

Zip the .bundle folder. To install, the user extracts the folder into %APPDATA%\Autodesk\ApplicationPlugins\. Most commercial installers (Inno Setup, WiX) just copy the bundle into place.

Frequently asked questions

Where does AutoCAD look for bundles?

Two folders: %APPDATA%\Autodesk\ApplicationPlugins (per-user) and %ProgramFiles%\Autodesk\ApplicationPlugins (machine-wide). Per-user is preferred because it doesn't require admin rights to install.

How do I target a specific AutoCAD version?

Set SeriesMin and SeriesMax in RuntimeRequirements. AutoCAD 2024 = R24.3, AutoCAD 2025 = R25.0, etc. The bundle is silently skipped on versions outside the range.

Can a bundle include LISP files?

Yes — use a ComponentEntry with the .lsp/.vlx path. AutoCAD treats it as if you'd added it to the Startup Suite.

The bundle isn't loading. How do I debug?

Check %APPDATA%\Autodesk\<acad>\<lang>\acad.log for bundle errors. The two usual causes are an XML parse error in PackageContents.xml or a mismatched SeriesMin/SeriesMax.

Related guides

How to NETLOAD a .NET Plugin in AutoCAD

Load a C# / VB.NET plugin DLL into AutoCAD with NETLOAD, troubleshoot common load errors, and set up auto-load so you don't NETLOAD every session.

Browse listings

AutoCAD .NET Plugins (C# / VB.NET)

Verified .NET plugins for AutoCAD and the AutoCAD verticals. NETLOAD-ready DLLs and one-click .bundle installers, with explicit AutoCAD version compatibility on every listing.

Related terms

.NET plugin

A managed assembly (C#/VB.NET DLL) that uses Autodesk's .NET API to add commands and behaviour to AutoCAD or Civil 3D.

AUTOLOAD

Two related AutoCAD mechanisms for loading plugins on demand: the (autoload) LISP function and the auto-load registry/bundle keys used for .NET DLLs.

NETLOAD

The AutoCAD command that loads a managed .NET plugin DLL into the running session.