Lesson 1: Creating Your First Inventor Add-In

Overview

In this lesson, you will create an Autodesk Inventor add-in that loads successfully and connects to Inventor through the ApplicationAddInServer interface.

By the end of this lesson, you will:

  • Understand the Inventor add-in lifecycle
  • Know how Inventor executes your code
  • Be familiar with core Inventor API objects
  • Successfully load and debug an add-in

What Is an Inventor Add-In?

An Inventor add-in is:

  • A managed DLL (C# and VB.net)
  • Loaded into Inventor’s process
  • Built using the Inventor API to extend functionality

Unlike macros, add-ins:

  • Provide higher performance
  • Can register UI elements
  • Can listen to application events
  • Are appropriate—and typically required—for commercial plugins within the Inventor ecosystem

Many professional solutions distributed through the Autodesk App Store are implemented as add-ins.


What Is an API?

An Application Programming Interface (API) is a set of libraries that allow developers to control and extend a software product.

With the Inventor API, you can:

  • Access geometry
  • Automate modelling tasks
  • Create custom commands
  • Integrate Inventor with external systems

Prerequisites

Visual Studio

You can use Professional editions.

At the time of writing, Visual Studio 2022 or newer is recommended for the best development experience. However, Inventor’s COM-based API does not strictly require a specific Visual Studio version—any recent, supported environment should work.

Tip: Many teams prefer Visual Studio Professional or higher for advanced debugging and productivity tools.


Install the Required Workload

During Visual Studio installation, ensure the “.NET desktop development” workload is selected.

If you are unfamiliar with workloads, refer to Microsoft documentation:
https://learn.microsoft.com/en-us/visualstudio/install/workload-and-component-ids?view=visualstudio

Workloads are installed via the Visual Studio Installer, not from inside the IDE.


Install the Inventor SDK

The Inventor project templates are installed with the Inventor SDK.

Typical steps:

  1. Install Autodesk Inventor
  2. Locate the SDK installer (usually included with Inventor media or downloadable from Autodesk)
  3. Run the SDK installer to register project templates with Visual Studio

If you do not see the C# add-in template, verify:

  • The SDK is installed
  • The .NET desktop workload is present
  • Visual Studio was restarted after SDK installation

Target Framework

Use .NET 8.0 or later (required for modern Inventor development).

Note: Refer below blog link, if Inventor templates are missing in Visual studio IDE
https://blog.autodesk.io/missing-autodesk-inventor-templates-in-visual-studio/


Steps to Create Your First Add-In

1. Launch Visual Studio

Start Visual Studio.

Select Create a new project.

Search for:

Autodesk Inventor C# Addin (for ex: Autodesk Inventor 2026 C# Addin).

Select the template and click Next.

Name your project, for example:

MyFirstInventorAddIn


2. Implement ApplicationAddInServer

Every Inventor add-in must implement the ApplicationAddInServer interface—the entry point Inventor uses to communicate with your plugin.

Replace the default class with this minimal implementation:

using Inventor;
using System.Runtime.InteropServices;

namespace MyFirstInventorAddIn
{
    [Guid("E6A1A1E2-1234-4567-ABCD-1234567890AB")]
    public class AddInServer : ApplicationAddInServer
    {
        private Inventor.Application _inventorApp;

        public void Activate(
            ApplicationAddInSite addInSiteObject,
            bool firstTime)
        {
            _inventorApp = addInSiteObject.Application;

            // Minimal proof that add-in loaded
            _inventorApp.StatusBarText =
                "MyFirstInventorAddIn loaded successfully";
        }

        public void Deactivate()
        {
            _inventorApp = null;
        }

        public void ExecuteCommand(int commandID)
        {
            // Not used in this lesson
        }

        public object Automation => null;
    }
}

3. Assign a Unique GUID

Each add-in must have a unique GUID.

In Visual Studio:

Tools → Create GUID

Replace the value in the [Guid(...)] attribute.

Inventor uses this GUID to identify your add-in.


4. Build the Project

Set configuration to Debug and build the solution.

This generates a DLL in:

bin\Debug

⚠️ Important: Inventor does NOT automatically discover DLLs from this folder.
An .addin manifest file is required.


Creating the .addin Manifest (Preferred Loading Method)

Registry-based add-ins are no longer the recommended approach.

Modern Inventor development uses a registry-free .addin file.

Example .addin file:

?xml version="1.0" encoding="utf-8"?>
<addin type="Standard">
  <name>MyFirstInventorAddIn</name>
  <assembly>C:\Path\To\Your\DLL\MyFirstInventorAddIn.dll</assembly>
  <addintype>Standard</addintype>
  <loadonstartup>1</loadonstartup>
  <userunloadable>1</userunloadable>
</addin>

Place the file in one of these locations:

Per-user:

%APPDATA%\Autodesk\Inventor Addins\

All users:

%PROGRAMDATA%\Autodesk\Inventor Addins\

Note: LoadOnStartUp controls whether the add-in loads automatically. This is configurable and not guaranteed by default.


Running and Debugging the Add-In

Option 1 — Debug Using an Executable Launch Profile (Recommended)

Instead of manually launching Inventor and attaching the debugger, you can configure Visual Studio to start Inventor automatically when debugging.

This is the preferred approach for professional add-in development.


Step-by-Step: Create an Executable Launch Profile

Step 1 — Open Launch Profiles

  • Right-click your Project in Solution Explorer
  • Select Properties
  • Navigate to the Debug tab
  • Click: 👉 Open debug launch profiles UI

Step 2 — Create a New Profile

Inside the Launch Profiles window:

  • Click Add (+)
  • Choose Executable
  • Name it something meaningful, for example:
    Inventor 2026 Debug

Step 3 — Configure the Profile

Executable

Provide the full path to Inventor:

C:\Program Files\Autodesk\Inventor 2026\Bin\Inventor.exe

(Use Browse if needed.)

Command Line Arguments (Optional)
Usually not required for Inventor. Leave empty unless you need special startup behavior.

Working Directory

Set it to the Inventor Bin folder:

C:\Program Files\Autodesk\Inventor 2026\Bin

✅ This prevents assembly-loading issues.


Step 4 — Build the Project

Press:

Ctrl + Shift + B

Ensure the build succeeds before debugging.


Step 5 — Select the Profile

From the Visual Studio toolbar near the Run button:

Select:

Inventor 2026 Debug

This is typically faster than attaching manually.


Option 2 — Attach to Process

  • Start Inventor
  • In Visual Studio:
    Debug → Attach to Process → Inventor.exe
  • Set breakpoints in Activate

Understanding the Add-In Lifecycle

When Inventor starts:

  • Inventor scans .addin manifests
  • The DLL is loaded (if configured)
  • Activate() is called
  • The add-in remains resident
  • Deactivate() is called during shutdown

Key Objects Introduced

ObjectPurpose
ApplicationAddInServerEntry point for add-ins
ApplicationAddInSiteProvides access to Inventor
Inventor.ApplicationRoot API object

The Application object is your gateway to:

  • Documents
  • User interface
  • Geometry
  • Commands
  • Events

Distribution Considerations

For commercial deployment:

  • Use an installer to place the .addin file
  • Follow Autodesk App Store packaging guidelines
  • Ensure version compatibility

Publishing through the Autodesk App Store is strongly encouraged for production solutions.


Note: This lesson was authored and validated using Autodesk Inventor 2026. However, the concepts apply broadly to modern Inventor versions unless otherwise noted.


Summary

You have learned how to:

  • Create an Inventor add-in
  • Implement ApplicationAddInServer
  • Generate a GUID
  • Configure a registry-free .addin loader
  • Debug your add-in
  • Understand the add-in lifecycle

You are now ready to begin building production-grade extensions for Autodesk Inventor.


Comments

One response to “Lesson 1: Creating Your First Inventor Add-In”

  1. […] Lesson 1: The Basic Inventor Add-In […]

Leave a Reply

Discover more from Autodesk Developer Blog

Subscribe now to keep reading and get access to the full archive.

Continue reading