Felix Dombek
Felix Dombek

Reputation: 14356

Why is no ProgId generated for these ATL Simple Objects?

I have an ATL DLL with a bunch of ATL Simple Objects (= COM objects), all wizard-generated.

The IDL file contains lots of interfaces and a library section such as this:

[
    object,
    uuid(00000000-0000-0000-0000-000000000000),
    dual,
    nonextensible,
    pointer_default(unique)
]
interface IFoo : IDispatch{
    [id(1)] HRESULT FooMethod();
};
[
    uuid(00000000-0000-0000-0000-000000000000),
    version(1.0),
]
library MyLib
{
    importlib("stdole2.tlb");
    [
        uuid(00000000-0000-0000-0000-000000000000)
    ]
    coclass Foo
    {
        [default] interface IFoo;
    };
}

MSDN seems to say that a progid attribute should be automatically generated for each coclass. However, there are none in my registry. The DLL is otherwise completely normally registered at each compilation and can be used from COM clients without any issues.

How can it happen that the progids are not automatically generated?

Upvotes: 0

Views: 579

Answers (1)

Felix Dombek
Felix Dombek

Reputation: 14356

It seems I mistook the documentation and for IDL coclasses the ProgID is not automatically generated. Too bad.

Anyway, here is explained how to add them to the .rgs files later.

Upvotes: 1

Related Questions