Runtime error '429': ActiveX component can't create object. HELP!! Excel COM

brazilnut52

Member
Joined
Feb 7, 2003
Messages
16
Hi. Let me explain the setup. I am using Visual Studio .NET to develop a sort of add-in (COM class) for Excel called SQLAddin. It basically queries a SQL server and pulls in data. Now within my Visual Studio Project, the SQLAddin references a compiled COM object built with Visual Studio 6.0 called SQLOld.dll. When I complie the project I get the following files in my \bin directory:
SQLAddin.dll
SQLAddin.pdb
SQLAddin.tlb
Interop.SQLOld.dll

Within Visual Studio .NET I have set the project properties to "Register for COM Interop". The reason why I am mentioning the set up for the development for this project, is that this add-in works great on my computer. The VBA in Excel that accesses the object calls the functions correctly and correctly assigns the return values. BUT when I try to setup and run this Addin on another computer, it does not work. I get the error: Runtime error 429: ActiveX component cant create object. Let me explain my installation procedures for the other computer:

To note, the computers I am installing the addin on all have the .NET Framework installed.
First I copy over all the files in the \bin directory (as mentioned above) PLUS the actual SQLOld.dll. I also include the Excel file with the references and VBA code complied.

So, if I go into Excel run the addin. I get the error. So then I think that perhaps the SQLOld.dll needs to be registered. So I run regsvr32 on the SQLOld.dll. The register succeeds, but when I run the addin again. I get the same error.

So why does the addin work on my computer but not anyones elses? My hypothesis is that Visual Studio .NET is doing something behind the scenes when I compile. And I am not doing that on the other machine.

Any ideas??

Thanks for you help,
brazilnut
 
Yes. You have to install the Interop library in the GAC on the new computer. Search gacutil.exe and you will find what you need.
 
Back
Top