COM Interface and IDE caching

M

Mark

I create a simple interface in a com object:

[Guid("02807777-4A83-48b3-B34E-B965264790E4")]
public interface ISimple
{
void a();
int b();
}

I build the object in Visual Studio and load the object from Excel. I can call a and b without any problems.

I then change the object's interface to :

[Guid("02807777-4A83-48b3-B34E-B965264790E4")]
public interface ISimple
{
void beforeA();
void a();
int newB();
}

When I build the project Visual Studio says that it unregisters the prior components and then proceeds to build and register the new component.

Looking at the typelib in OLEView shows the new interface definition is indeed available. Visual Studio however insists that the old interface definition still exists and only shows the old definition in the method completion popup. This is especially odd since the build uses the new definitions.

Even stranger is that Excel also now does not have the new interface and calls to the objects new methods fail too.

Where are VS and Excel caching the old definitions and how do i get rid of the old info and load the new? I have looked through the registry and haven't found anything.

Thanks

Mark
 

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