如何动态创建ActiveX控件, 在VC中如何动态创建ActiveX控件,而且可以根据传来的参数创建参数所表明的多个个数的控件在一个框架中,就象在VB中在一个窗体中根据传来的参数在运行时,生成多个控件在窗体上。谢谢,您的帮忙。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 根据参数调用CoCreateInstance();即可. the following codesnippet can create activex control at run timeCComQIPtr<IWebBrowser2> m_spBrowser;CAxWindow content_wnd;......if( _tcslen(m_tcHtmlFileName) > 0 ){RECT rc;GetClientRect( &rc );if(m_spBrowser==NULL){LPOLESTR pstrbrowserid;StringFromCLSID(IID_IWebBrowser2,&pstrbrowserid);_bstr_t bstrbrowser(pstrbrowserid);CoTaskMemFree(pstrbrowserid);if(content_wnd.IsWindow())content_wnd.DestroyWindow();content_wnd.Create( m_hWnd, rc, LPCTSTR(bstrbrowser), WS_CHILD¦WS_VISIBLE¦WS_HSCROLL¦WS_VSCROLL );//create a browser controlHRESULT hrbrowser;hrbrowser = content_wnd.QueryControl( IID_IWebBrowser2, reinterpret_cast<void**>(&m_spBrowser) );} CComPtr<IUnknown> m_ptrNestedAxControl;CAxWindow m_axNestedControl;m_axNestedControl.Create(m_hWnd, rect, 0, WS_CHILD|WS_VISIBLE);m_axNestedControl.CreateControlEx( Active控件的CLSID, NULL, NULL, &m_ptrNestedAxControl);//得到m_axNestedControl为控件窗口//m_ptrNestedAxControl为控件接口//Active控件的CLSID可以用StringFromCLSID获取,或直接用Exescope去获取. 搞不懂你说什么,好几句都看不懂。传来的参数创建参数所表明的多个个数的控件在一个框架中---什么东西啊?一句话,要创建用CoCreateInstance, 我tm真是个2b,气死了 select返回2,但是recv返回0,而且WSAGetlastError()返回0 编译FilterASFStreaming报C2059错误 MFC宏的一点小问题 请问:如何将HTML或WORD文档转化为PDF文档, 对于一个离散数组,用什么算法实现以下…… 怎样才能画个光滑的圆呢? MFC 中用CListCtrl保存数据,但导出行数不对 请教高手指点!紧急! 多表数据存储及多表sql查询及排列问题 TCP问题 如何做网络过滤软件?过滤掉非法网站!!
CComQIPtr<IWebBrowser2> m_spBrowser;
CAxWindow content_wnd;
......
if( _tcslen(m_tcHtmlFileName) > 0 )
{
RECT rc;
GetClientRect( &rc );
if(m_spBrowser==NULL)
{
LPOLESTR pstrbrowserid;
StringFromCLSID(IID_IWebBrowser2,&pstrbrowserid);
_bstr_t bstrbrowser(pstrbrowserid);
CoTaskMemFree(pstrbrowserid);
if(content_wnd.IsWindow())
content_wnd.DestroyWindow();
content_wnd.Create( m_hWnd, rc, LPCTSTR(bstrbrowser), WS_CHILD¦WS_VISIBLE¦WS_HSCROLL¦WS_VSCROLL );//create a browser control
HRESULT hrbrowser;
hrbrowser = content_wnd.QueryControl( IID_IWebBrowser2, reinterpret_cast<void**>(&m_spBrowser) );
}
CAxWindow m_axNestedControl;m_axNestedControl.Create(m_hWnd, rect, 0, WS_CHILD|WS_VISIBLE);
m_axNestedControl.CreateControlEx( Active控件的CLSID, NULL, NULL, &m_ptrNestedAxControl);//得到m_axNestedControl为控件窗口
//m_ptrNestedAxControl为控件接口
//Active控件的CLSID可以用StringFromCLSID获取,或直接用Exescope去获取.
传来的参数创建参数所表明的多个个数的控件在一个框架中
---什么东西啊?一句话,要创建用CoCreateInstance,