I am attempting to create a new COM object in my DLL using the ATL Simple Object Wizard in Visual Studio 2005.
I enter the short name for the object, and all of the other fields are derived.
However, when I click Next in the wizard, the following error message comes up:
Object 'IXxxInterfaceName' already exists
I have searched my entire solution for all references to IXxxInterfaceName and can't see it defined anywhere.
How is the wizard determining that it exists already?
Also happens in VS 2008. However Clean solution and Clean project from build option solves this :-)
Is it defined in a library you are referencing?
I never found out why the wizard determined that the object name existed already - I'm guessing something was cached somewhere that I couldn't track down.
In the end, I appended a 2 to the end of the interface name when creating it which allowed it to be added. Then I replaced all the occurrences of IXxxInterfaceName2 with IXxxInterfaceName. Everything worked after this.
If I ever track down the root cause of this problem, I'll update the answer.