COM Add-in file location

E

Excel dweeb

My COM add-in is apparently being taken from an old file path, and
thus will only work on my development machine and no others. Here's
the situation:

I have an Excel add-in, call it abc.xla, that contains some wrapper
functions for the COM add-in (created in VB 6.0 as a .dll file - call
it xyz.dll).

I also have a standalone .exe file that uses automation to open Excel
and checks to make sure the abc.xla is added and installed and
accomplishes that if not.

My installer script copies abc.xla, xyz.dll and standalone.exe to
C:\Program Files\ESS (as the default) and then adds registry keys for
the COM add-in (xyz.dll) and registers it as a COM server.

When the COM add-in wasn't being found on the test machine (not the
development machine), I noticed that the registry keys were installed
OK. I then went back to the development machine and added the button
to an Excel command bar to show me which COM Add-ins were installed -
it lists the file path as C:\development\xyz.dll and not C:\Program
Files\ESS\xyz.dll.

For the life of me, I cannot find where this file path is being
specified so I can't figure out how to change it. I realize a lot of
this touches on VB 6 and the Ghost installer scripts, but the key
element seems to be where this COM Add-in file path is being specified
for use by Excel.

If any of you can help, I'd appreciate it - or if there's a better
newsgroup to post this to, I'll go there. TIA.
 
E

Excel dweeb

Tom,

Thanks for your post. I'm developing for Excel 2000 (9.0) so I can't
make any calls from the .XLA to the COM Add-in directly; I have to
user wrapper functions in the .XLA, like so (probably line-wrapped):

Dim oAdd as Object
Public Function ChkKey_Wrapper(str1 As String, str2 As String, str3 As
String) As String
Set oAdd =
Application.COMAddIns.Item("Registration.Connect").Object
ChkKey_Wrapper = oAdd.CheckConsistency(str1, str2, str3)
End Function

There's no reference in the Excel VBE with the spurious file path, nor
in Tools/Add-ins in Excel itself.

I can search with RegEdit for that path string, but that may not give
me a clue as to who set that key. Any other thoughts?
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top