|
阅读:1330回复:0
VC+MO 创建一个新图层失败!大家快来帮帮我吧
<P>以下是我的代码:</P>
<P>CMoDataConnection oConnect; <BR> <BR> CMoTableDesc objTableDesc;//创建新的层的字段结构,新层里除了Shp字段,应该还有一个RoadClass字段<BR> <BR> if (!objTableDesc.CreateDispatch(TEXT("MapObjects2.TableDesc")))<BR> {<BR> return;<BR> }<BR> <BR> objTableDesc.SetFieldCount(1);<BR> <BR> objTableDesc.SetFieldName(0, "RClass");<BR> <BR> objTableDesc.SetFieldLength(0, 8);<BR> <BR> objTableDesc.SetFieldType(0, 3); <BR> <BR> CString sName("nlayer");//新层的名字<BR> <BR> CMoDataConnection objDc;<BR> <BR> if (!objDc.CreateDispatch(TEXT("MapObjects2.DataConnection")))<BR> {<BR> return;<BR> }<BR> <BR> objDc.SetDatabase((LPCTSTR)sOutputpath);<BR> <BR> if (!objDc.Connect())<BR> {<BR> return;<BR> }<BR> <BR> VARIANT vt;<BR> <BR> VariantInit(;vt); <BR> <BR> vt.vt = VT_BOOL; <BR> <BR> vt.boolVal =VARIANT_FALSE; </P> <P> long moShpeTypeLine = 22;</P> <P> CMoGeoDataset objGds;</P> <P> if (!objGds.CreateDispatch("MapObjects2.GeoDataset"))<BR> {<BR> return;<BR> }<BR> <BR> objGds = objDc.AddGeoDataset((LPCTSTR)sName,moShpeTypeLine,(LPDISPATCH)objTableDesc,vt,vt);<BR> <BR> if (!objGds)//到这里就返回了,objGds没有创建成功,谁能告诉我原因啊!急!!!!<BR> {<BR> return;<BR> }</P> |
|