2,142
社区成员
发帖
与我相关
我的任务
分享
IMapDocumentPtr pArcDocument(CLSID_MapDocument);
long lArcMapCount = 0;
VARIANT_BOOL vbIsDocument = 0;
CString strSour;
IArcFeatureClassPtr pArcFCls;
GetDlgItemText(IDC_EDIT2,strSour);
//strSour为源shp目录
pArcDocument->get_IsMapDocument((_bstr_t)(LPCTSTR)strSour, &vbIsDocument);
if (vbIsDocument == VARIANT_FALSE)
{
AfxMessageBox("error",MB_OK);
return;
}
HRESULT hr = pArcDocument->Open((_bstr_t)(LPCTSTR)strSour, NULL);
pArcDocument->get_MapCount(&lArcMapCount);
//对每个地图进行转换
for (int i = 0;i < lArcMapCount; i++)
{
long lArcLayerCount = 0;
IArcMapPtr pArcMap;
ILayerPtr pArcLayer;
IArcFeatureLayerPtr pArcFLayer;
IArcFeatureClassPtr pArcFCls;
pArcDocument->get_ArcMap(i,&pArcMap);
pArcMap->get_LayerCount(&lArcLayerCount);
for (int j = 0; j < lArcLayerCount; j++)
{
pArcMap->get_Layer(j,&pArcLayer);
pArcFLayer = pArcLayer;
pArcFLayer->get_FeatureClass(&pArcFCls);
}
}