ExcelDNA is mint

I was somewhat despondent recently when I realised my big Excel add-in project was going to need some sort of install.
I had picked up a few dependencies that would not be on non dev boxes so it looked a bit like I was going to need a proper set up. Exactly the sort of thing us Excel types hate.
But then I remembered that ExcelDNA can pack everything into the xll, not just my .dll.
a quick edit of the .dna later:
<ExternalLibrary Path=”my.dll” Pack=”true” />
<ExternalLibrary Path=”dao.dll” Pack=”true” />
<ExternalLibrary Path=”Interop.ADODB.dll” Pack=”true” />
<ExternalLibrary Path=”Interop.ADOX.dll” Pack=”true” />
<ExternalLibrary Path=”Microsoft.Office.Interop.Excel.dll” Pack=”true” />
<ExternalLibrary Path=”Microsoft.Vbe.Interop.dll” Pack=”true” />
<ExternalLibrary Path=”office.dll” Pack=”true” />

and we are back to a single xll file deployment. youpeee!

I have the following as a post build event:
C:\…\ExcelDna-0.27\Distribution\ExcelDnaPack.exe “C:\…my.dna” /y

I think ExcelDNA packing is mint.

Are you using ExcelDNA? What for?

(Can you get packing to work??)



3 Responses to “ExcelDNA is mint”

  1. Govert van Drimmelen Says:

    Hi Simon,

    Do you know when the dao.dll is needed, and have you checked that it will work from the packed .xll? I’m wondering since i presume it is activated with COM, and Excel-Dna does no COM registration for packed libraries.

    How big is your resulting .xll?


  2. Govert van Drimmelen Says:

    Oh, and you should probably put those other references that are not meant to be exported as add-in libraries into Reference tags

    is for the .dna files and .dlls that are checked for exporting, so it could slow down loading if they all have to be checked for static functions to export …!

  3. Simon Says:

    Hi Govert
    yep I’m pretty sure dao.dll is needed and in basic testing it all seems to work. I need to check on another couple of pcs to be sure.
    The resulting xll is less than 600 kb.
    thanks for the references tip, I’ll check that out. Performance seems ok for now though

Leave a Reply

Please log in using one of these methods to post your comment:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

This site uses Akismet to reduce spam. Learn how your comment data is processed.

%d bloggers like this: