I have a COM visible dll written in C# (v2.0). The idea is to expose
these public functions in this .NET dll to an Excel spreadsheet using
VBA by creating a tlb file which I did. On my development machine all
works well. When deploying these files to another machine where VS2005
and none of the SDK tools is available, none of this seem to work.
I have created, recreated, registered, reregistered and moved both the
dll and tlb several times as per posts and tutorials. I’ve also as per
Microsoft KB article (
http://support.microsoft.com/kb/908002 )
deployed and installed the KB908002 patch which addresses this
problem. (extensibilityMSM.msi, lockbackRegKey.msi, office2003-
kb907417sfxcab-ENU.exe)
After some testing I realized that Excel is indeed invoking the older
version of the .NET framework (v1.1) instead of 2.0 which is installed
on the same machine. I could prove this when I uninstalled the
framework 1.1 and got automation errors. Some suggested that I should
‘tell’ Excel to use the newer version of the framework by creating a
config file. (Excel.exe.config) and drop that into the C:\Program Files
\Microsoft Office\OFFICE11 directory.
<?xml version="2.0" encoding="utf-8" ?>
<configuration>
<startup>
<supportedRuntime version="v2.0.50727"/>
</startup>
</configuration>
This however still didn’t solve my problem.
Is there anybody that could shine some light on my problem or better
yet have some working example? Even if its small so I can build on it.
I did find some tools on the net e.g. Filemon and Regmon which I will
try again tomorrow. They’re not that easy to use though.
Please if anybody know how your help will be much appreciated!