G
Gonzalo Diethelm
Hello,
I have an Excel add-in written in C. It is an XLL (let's call it
"addin.xll") that exports a set of functions. In order to implement
those functions, the add-in relies on another external DLL (let's call
it "helper.dll"), which has lots of business logic and useful routines.
Now, I want to install addin.xll from an MSI package (built with WiX).
I already know how to put the XLL into any directory I want, and then
create an OPENx entry in the registry, so that the XLL will be
automatically loaded in Excel. My question is: where should I put
helper.dll? I can see the following possibilites:
1. Put it in any system-wide folder (Windows, System32): hateful and
polluting.
2. Put it in my own directory, add that to the PATH: works, but I would
rather not touch the PATH; I could be screwing over some other
helper.dll library used by a different program.
3. Put it next to addin.xll: it doesn't work, Excel tries to open the
XLL as if it was a data file, says the file is in an unrecognized
format.
4. Put it in an Excel-wide folder: haven't found any that works, other
than the path where EXCEL.EXE is installed (which, I guess, amounts to
the "current directory"). But this means adding stuff to a folder
controlled by Office's installer, which I would rather not do.
5. My personal preference: put it in my own directory, add that to a
magic place (registry, etc.) and have Excel pick it up automatically.
Am I dreaming?
Any suggestions? Thanks and best regards.
I have an Excel add-in written in C. It is an XLL (let's call it
"addin.xll") that exports a set of functions. In order to implement
those functions, the add-in relies on another external DLL (let's call
it "helper.dll"), which has lots of business logic and useful routines.
Now, I want to install addin.xll from an MSI package (built with WiX).
I already know how to put the XLL into any directory I want, and then
create an OPENx entry in the registry, so that the XLL will be
automatically loaded in Excel. My question is: where should I put
helper.dll? I can see the following possibilites:
1. Put it in any system-wide folder (Windows, System32): hateful and
polluting.
2. Put it in my own directory, add that to the PATH: works, but I would
rather not touch the PATH; I could be screwing over some other
helper.dll library used by a different program.
3. Put it next to addin.xll: it doesn't work, Excel tries to open the
XLL as if it was a data file, says the file is in an unrecognized
format.
4. Put it in an Excel-wide folder: haven't found any that works, other
than the path where EXCEL.EXE is installed (which, I guess, amounts to
the "current directory"). But this means adding stuff to a folder
controlled by Office's installer, which I would rather not do.
5. My personal preference: put it in my own directory, add that to a
magic place (registry, etc.) and have Excel pick it up automatically.
Am I dreaming?
Any suggestions? Thanks and best regards.