Registration across projects within single solution

27 views
Skip to first unread message

Joseph Simon

unread,
Jan 7, 2026, 11:54:11 AM (3 days ago) Jan 7
to Excel-DNA
Hi Govert,

I am trying to have ExcelDna.Registration pick up tagged functions within another project under the same solution. I am using .NET 8, and all recommendations seem to point to including an external .dna file within my solution, but I thought manual editing of those had been obfuscated?

I have linked a github repo of a minimum viable example, with the function registered in the external project is not recognized, even though it is marked as a project reference in the core addin project.

Joe 

Govert van Drimmelen

unread,
Jan 7, 2026, 2:58:14 PM (3 days ago) Jan 7
to Excel-DNA
Hi Joe,

I think you can add a list of extra external libraries (semi-colon delimited list) like this in the .csproj file:

    <ExcelAddInExports>FunctionsExternal.dll</ExcelAddInExports>

You'll see that these get added as additional entries in the generated .dna file:

  <ExternalLibrary Path="MinimumCaseAddIn.dll" ExplicitExports="false" LoadFromBytes="true" Pack="true" IncludePdb="false" />
  <ExternalLibrary Path="FunctionsExternal.dll" ExplicitExports="false" LoadFromBytes="true" Pack="true" IncludePdb="false" />

-Govert

Govert van Drimmelen

unread,
Jan 7, 2026, 3:01:59 PM (3 days ago) Jan 7
to Excel-DNA
In your sample you also have to deal with whether you are doing the function registration yourself (with code in AutoOpen() as you have it now) or let Excel-DNA do the default registration.
Currently you have both, leading to warning messages popping up.

To disable the default registration, you would set this property:
<ExcelAddInExplicitRegistration>true</ExcelAddInExplicitRegistration>

The supported project properties are listed here:

-Govert

Joseph Simon

unread,
Jan 8, 2026, 7:04:37 AM (3 days ago) Jan 8
to Excel-DNA
Thank you!

If anyone comes by this issue again, I updated my Example repository with the fix.

https://github.com/josephsimonrnco/MinimumCaseAddIn

I also added a DummyAddIn to the external library to prevent the 'No Object Loaded' popup
Reply all
Reply to author
Forward
0 new messages