COM オブジェクトの呼び出しに問題があります。
szProgID = Imctrl.Section
HRESULT hr = CLSIDFromProgID(szProgID, &clsid);
実行後、hr=S_OK、clsid=「CLSID_Section Class」。
しかし、オブジェクトを作成しようとすると、CoCreateInstance がエラーを返しました:「クラスが登録されていません」。「Imctrl.Section」はレジストリに存在しますが。
hr = ::CoCreateInstance(clsid, pUnkOuter, dwClsContext, __uuidof(T), (void**)&p);
この dll の他のクラスでも同じエラーが発生します。