问题描述
- MFC 定时 non-unique name specified
-
使用单文档MFC,设置一个定时器SetTimer(1, 1000, NULL),使用它每隔一秒更新一次
地图。ontimer写入如下代码后:
{
CMapXLayers lays;//图层集合
CMapXLayer lay;
lays = m_ctrlMapX.GetLayers();
lay = lays.CreateLayer("temp1",NULL,1);
CMapXStyle style;
CMapXFeature ftr;
extern CString m_Longtd, m_Lattd;
double a,b;if(ftr.CreateDispatch(ftr.GetClsid())) { ... } else { AfxThrowOleException(CO_E_CLASS_CREATE_FAILED); } } 执行后出现如下问题: non-unique name specified.(name already in use by another object) 该怎么解决呢?
解决方案
名字重复了,看看是不是代码执行了2次。
解决方案二:
CreateLayer后,是否需要对应的 DeleteLayer 呢?
解决方案三:
是不是重复创建了?lays.CreateLayer("temp1",NULL,1);
时间: 2024-11-10 07:06:34