首页 > 代码库 > ArcEngine真正释放锁文件,彻底移除图层

ArcEngine真正释放锁文件,彻底移除图层

ArcMap在加载图层时会自动生成一个lock格式的加锁文件,右击移除图层后,加锁文件也会自动删除。但AE开发中却不能正常删除,移除图层后加锁文件依然存在,这就导致在其他地方无法对该图层进行操作,只有关闭程序才能删除加锁文件,彻底释放资源。

技术分享

如果不关闭程序,锁文件也删除不了。

技术分享

即使用使用方法将工作空间释放了,也不能删除锁文件。帮助文档中有这样的接口

技术分享

代码:

1
2
3
4
5
6
7
IWorkspaceFactory pwf = new ShapefileWorkspaceFactory();
//关闭资源锁定  
IWorkspaceFactoryLockControl ipWsFactoryLock = IWorkspaceFactoryLockControl)pwf;
if (ipWsFactoryLock.SchemaLockingEnabled)
{
    ipWsFactoryLock.DisableSchemaLocking();
}

ArcEngine真正释放锁文件,彻底移除图层