在AE开发中,进行数据属性表更新时,用到IFeatureCursor.UpdateFeature()方法,在写入数据时,报错:尝试读取或写入受保护的内存。这通常指示其他内存已损坏。
测试数据为shp数据,这时只要将加上将数据的工作空间打开,开始编辑,最后再关闭编辑,就不会再报错了。
IDataset dataset = (IDataset)dltb_pfs;
IWorkspace workspace = dataset.Workspace;
IWorkspaceEdit workspaceEdit = (IWorkspaceEdit)workspace;
workspaceEdit.StartEditing(true);
workspaceEdit.StartEditOperation();
//中间为计算代码,计算完再关闭操作即可
workspaceEdit.StopEditOperation();
workspaceEdit.StopEditing(true);