widge
路人甲
路人甲
  • 注册日期2004-05-20
  • 发帖数9
  • QQ
  • 铜币131枚
  • 威望0点
  • 贡献值0点
  • 银元0个
阅读:1575回复:1

如何使用layerinfo来生成新的图层呢?

楼主#
更多 发布于:2004-06-06 18:11
<b>

</b>我的代码如下:
long position=1;
CMapXFields flds;
CMapXLayer lyrNew;
CMapXPoint ptNew;
CMapXFeature ftrNew;
CMapXFeatureFactory ff;
CMapXLayerInfo li;
//


<P>ptNew.CreateDispatch (ptNew.GetClsid ());
ff=m_ctrlMapX.GetFeatureFactory ();
flds.CreateDispatch(flds.GetClsid ());
flds.Add("CellName","CellName");
li.CreateDispatch (li.GetClsid ());
li.SetType(miLayerInfoTypeNewTable);
li.AddParameter("FileSpec",COleVariant("D:\\test\\CellInfo.tab"));
li.AddParameter ("Name",COleVariant("mycustomers"));
COleVariant vflds;
vflds.vt = VT_DISPATCH;
vflds.pdispVal = flds.m_lpDispatch ;
vflds.pdispVal->AddRef();
li.AddParameter ("Fields",vflds);
COleVariant vLi;
vLi.vt=VT_DISPATCH;
vLi.pdispVal =li.m_lpDispatch ;
vLi.pdispVal ->AddRef ();
m_ctrlMapX.GetLayers().Add (vLi,COleVariant(position));
可是,每一次运行到最后一行就会碰到一个错误:access violation
各位大侠帮忙看看!!</P>
喜欢0 评分0
gis
gis
管理员
管理员
  • 注册日期2003-07-16
  • 发帖数15951
  • QQ
  • 铜币25345枚
  • 威望15368点
  • 贡献值0点
  • 银元0个
  • GIS帝国居民
  • 帝国沙发管家
  • GIS帝国明星
  • GIS帝国铁杆
1楼#
发布于:2004-06-07 02:04
<P>偶然看到这个,偶真地头痛,期待有人解决,顶上去先</P>
GIS麦田守望者,期待与您交流。
举报 回复(0) 喜欢(0)     评分
游客

返回顶部