ISearchManager2 issue with signature C#
See the question and my original answer on StackOverflowWhen declaring inherited COM interfaces in .NET you must declare all inherited interfaces members, recursively. So for example, if you have this as the base interface:
[Guid("2cd90691-12e2-11dc-9fed-001143a055f9"), InterfaceType(ComInterfaceType.InterfaceIsIUnknown)]
public interface IBase
{
int Blabla();
}
Then an IDerived
definition would be something like this:
[Guid("65019f75-8da2-497c-b32c-dfa34e48ede6"), InterfaceType(ComInterfaceType.InterfaceIsIUnknown)]
public interface IDerived
{
// IBase methods
int Blabla();
// IDerived methods
...
}
Or better, like this, if you want to keep inheritance hierarchy in .NET:
[Guid("65019f75-8da2-497c-b32c-dfa34e48ede6"), InterfaceType(ComInterfaceType.InterfaceIsIUnknown)]
public interface IDerived : IBase
{
// IBase methods
new int Blabla();
// IDerived methods
...
}