用vc开发基于mfc的activex控件时,怎么样再使用一个别的activex控件,比如mscomm控件
解决方案 »
- VS2010调试时Error:enum<unnamed>::CV_SHAPE_RECT类型的实参与IplconvKerenl类型的形参不兼容?怎么改?
- 如何分辨普通com组件与activeX组件
- ADO从access中查询数据时能否直接读出int型
- 菜鸟提问,非常感谢!!!文件中内容查找及替换
- 如何实现edit 像cmd那样滚动,并且显示50行之后上面的自动清除?
- 一个奇怪问题,是不是vc6.0与p4的兼容性有问题呢(oracle8.1与p4的兼容性是有问题的)?
- //////vs 6.0试图装在XP上,提示错误如下:
- 进程间互斥
- 请问opengl的曲面绘制的函数glunurbssurface该怎么填写
- 急!请问用BitBlt()函数抓屏得到的数据是什么格式的?
- 关于状态栏的问题
- 请教:把下面的Delphi程序代码转化为相应的VC代码。
http://www.codeguru.com/atl/mfcatl.shtml
then you create mscomm control by ATL, refer to the following technic of creating mswinsck.ocx control
#import "c:\winnt\system32\mswinsck.ocx" no_namespace
...
IMSWinsockControlPtr pWinsock;
_bstr_t pstr("mswinsock.winsock");
CLSID clsidwinsock;
CLSIDFromProgID(pstr,&clsidwinsock);
pWinsock.CreateInstance(clsidwinsock);
if(pWinsock)
{
pWinsock->RemotePort=13;
pWinsock->RemoteHost=_bstr_t("time-a.nist.gov");
_variant_t varoptional((long)DISP_E_PARAMNOTFOUND,VT_ERROR);
HRESULT hr= pWinsock->Connect();
if(FAILED(hr))
MessageBox(NULL,"failed","failed",MB_OK);
......pWinsock->Close();
}
else
MessageBox(NULL,"can not create winsock","error",MB_OK);
我使用一个gis功能的activex,我要做一个空间聚类,要用那个activex的一些东西,我想把这个聚类的东西也作为一个activex发布,不管包含还是聚合都可以了,我在我的那个activex中创建那个gis控件时总是非法操作,看了看是好像是容器的问题,也不清楚了
你那个问题看看能不能解决
strControlProgid,
"",
WS_VISIBLE,
rc,
this,
IDC_MSCOMM1,
NULL,
FALSE,
NULL);
来创建activex控件,其中strControlProgid为该控件的Progid,要处理该控件的消息,象在对话框中一样,在头文件中添加DECLARE_EVENTSINK_MAP()宏定义,在实现文件中添加
BEGIN_EVENTSINK_MAP(CMASCCtrl, COleControl)
//{{AFX_EVENTSINK_MAP(CMascdriverDlg)
ON_EVENT(CMASCCtrl, IDC_MSCOMM1, 1 /* OnComm */, OnComm, VTS_NONE)
//}}AFX_EVENTSINK_MAP
END_EVENTSINK_MAP()
即可,OnComm即是你的消息处理函数。