I'm developing a software under Visual C++ 6.0 using MFC. Because i use MSFlexGrid activex control, creating it dynamically into my source program like this:

MSFlexGrid.Create(NULL, WS_VISIBLE, rectClient, this, IDC_MSFLEXGRID);

When it is created, generates debug assertion fail and it shows me source code error in winocc.cpp line 345 that refers to this procedure:

void AFX_CDECL CWnd::InvokeHelper(DISPID dwDispID, WORD wFlags, VARTYPE vtRet, void* pvRet, const BYTE* pbParamInfo, ...)
ASSERT(m_pCtrlSite != NULL); // not an OLE control (not yet, at least)

if (m_pCtrlSite == NULL)

va_list argList;
va_start(argList, pbParamInfo);
m_pCtrlSite->InvokeHelperV(dwDispID, wFlags, vtRet, pvRet,
pbParamInfo, argList);

line 345 is 'ASSERT(m_pCtrlSite != NULL)'. So!, it seems to be to me that Activex wasn't installed or registered. I did it then!, but when i did it using the installer CD from visual studio 6.0 in custom way only for activex, perfect!, my error disappeared. But when i did it using just regsvr32 command it doesn't work, errors continues!, So my question is... There is some way for registering activex avoiding use CD from visual studio?