如何从mfc dll加载ActiveX dll

如何从mfc dll加载ActiveX dll,mfc,Mfc,有一个第三方ActiveX dll,其中包含风扇的控制对话框。希望使用API从MFC dll访问ACtiveX dll,以便能够打开控件对话框并访问ACtiveX中的其他一些函数。这实际上容易吗?什么资源应该称为何处?。有什么例子吗?。需要在周围没有温度的情况下连续记录温度。在microsoft网站上阅读了大量内容后,找到了一个MFC dll,其对话框使用ActiveX控件。另外,编写了一个MFC和一个控制台应用程序,通过调用dll的opendialog(),我看到对话框启动。我希望我没有造成任

有一个第三方ActiveX dll,其中包含风扇的控制对话框。希望使用API从MFC dll访问ACtiveX dll,以便能够打开控件对话框并访问ACtiveX中的其他一些函数。这实际上容易吗?什么资源应该称为何处?。有什么例子吗?。需要在周围没有温度的情况下连续记录温度。

在microsoft网站上阅读了大量内容后,找到了一个MFC dll,其对话框使用ActiveX控件。另外,编写了一个MFC和一个控制台应用程序,通过调用dll的opendialog(),我看到对话框启动。我希望我没有造成任何内存泄漏。或在不知情的情况下导致任何资源(取消)分配错误。到目前为止,一切似乎都在运转

BOOL CDllApp::InitInstance()
{
    CoInitialize(0);
    AfxEnableControlContainer();
    return CWinApp::InitInstance();
}

int CDllApp::ExitInstance()
{
    CoUninitialize();
    return CWinApp::ExitInstance();
}

In another class, in the same mfc dll, i do this.:
void CMyClass::opendialog()
{
    AFX_MANAGE_STATE(AfxGetStaticModuleState( ));
    CMyDialog dlg;
    dlg.DoModal();
}

你能发布一些代码吗?我想了解一下这是否完全可行?。我在msdn中读到需要在InitInstance中调用AfxEnableOleContainer()。最初您问这是否“实际上很容易”。答案是:视情况而定。如果你知道你在做什么,那就是。如果你没有,那就不是了。考虑阅读和更新你的问题,以满足这个网站的期望。请阅读我自己的答案在下面。