//对正在操作的文件进行保存
STDMETHODIMP CTHDatabase::Save(void)
{// TODO: 在此添加实现代码
 Acad::ErrorStatus es ;try{AcDbDatabase* pCurDb = acdbHostApplicationServices()->workingDatabase();if(pCurDb == NULL){return Error(L"Fialed to get current docment " ,IID_ITHDatabase,E_FAIL);}AcAxDocLock docLock( pCurDb, AcAxDocLock::kCurDocSwitch );if(docLock.lockStatus() != Acad::eOk)throw docLock.lockStatus();//得到被操作dwg文件的数据库AcDbDatabase* pWorkDb = NULL;CAcApDocLockServer tempDocLockServer;if(m_strFileName.IsEmpty())pWorkDb = pCurDb;else{pWorkDb = tempDocLockServer.GetDataBase(m_strFileName);if(NULL == pWorkDb){CString strErr = L"Fialed To open the " ;return Error(strErr + m_strFileName,IID_ITHDatabase,E_FAIL);}}//如果当前操作的文件不是ACAD当前活动文档,则进行存盘if(!m_strFileName.IsEmpty()){//遍历ACAD所打开的所有文档,如果当前操作的文件已经被ACAD打开,//那么把此文档切换为活动文档,存盘后在切换到原来的活动文档AcApDocument* pCurDoc = curDoc();AcApDocumentIterator* iter = acDocManager->newAcApDocumentIterator();if (iter) {AcApDocument* tmpDoc;for (; !iter->done(); iter->step()) {tmpDoc = iter->document();if (tmpDoc){CString strFile(tmpDoc->fileName());if(m_strFileName.CompareNoCase(strFile) == 0){es = acDocManager->setCurDocument(tmpDoc, AcAp::kWrite);//切换为活动文档if(Acad::eOk != es){delete iter;throw MESSAGE(es);}es = tmpDoc->database()->saveAs(m_strFileName);if(Acad::eOk != es){delete iter;throw MESSAGE(es);}es = acDocManager->unlockDocument(tmpDoc);if(Acad::eOk != es){delete iter;throw MESSAGE(es);}es = acDocManager->setCurDocument(pCurDoc);//切换到原来的活动文档if(Acad::eOk != es){delete iter;throw MESSAGE(es);}delete iter;iter = NULL;return S_OK;}}}if(iter != NULL){delete iter;iter = NULL;}}//如果当前操作的文件没有被ACAD打开,直接保存es = pWorkDb->saveAs(m_strFileName);if(Acad::eOk != es)throw MESSAGE(es);}}catch(const Acad::ErrorStatus){CString strErr = L"Fialed To open the " ;return Error(strErr + m_strFileName,IID_ITHDatabase,E_FAIL);}return S_OK;
}

arx对正在操作的文件进行保存相关推荐

  1. python怎么保存文件代码_Python文件读写保存操作的实现代码

    本篇文章给大家带来的内容是关于Python文件读写保存操作的实现代码 ,有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助. 记录下第一次使用Python读写文件的过程,虽然很简单,第一次实 ...

  2. python读取写入文件_Python文件读写保存操作

    记录下第一次使用Python读写文件的过程,虽然很简单,第一次实现其实也有些注意的事项. 单个文件的读操作: 我们先假设一个需求如下: 读取一个test.txt文件 删除指定字符之前的文本 需求明白之 ...

  3. python存文件代码_Python文件读写保存操作的示例代码

    记录下第一次使用Python读写文件的过程,虽然很简单,第一次实现其实也有些注意的事项. 单个文件的读操作: 我们先假设一个需求如下: 读取一个test.txt文件 删除指定字符之前的文本 需求明白之 ...

  4. arx 块操作 头文件

    //块操作头文件 //unsigned short a = 8;     DWORD a = 8;     int i= sizeof(a);     int b = 1<< a; CSt ...

  5. Android开发--文件系统中的内部存储和外部存储最全解析 附文件数据保存操作封装

    文件存储 前言 文件存储 内存 内部存储 外部存储 内部存储操作 API 读写操作 外部存储操作 公共目录 私有目录 私有文件 私有缓存 文件各种操作封装 前言 众所周知,数据存储在每个应用中都会用到 ...

  6. C++ 学习笔记之——文件操作和文件流

    1. 文件的概念 对于用户来说,常用到的文件有两大类:程序文件和数据文件.而根据文件中数据的组织方式,则可以将文件分为 ASCII 文件和二进制文件. ASCII 文件,又称字符文件或者文本文件,它的 ...

  7. python中文名字-完美解决Python2操作中文名文件乱码的问题

    Python2默认是不支持中文的,一般我们在程序的开头加上#-*-coding:utf-8-*-来解决这个问题,但是在我用open()方法打开文件时,中文名字却显示成了乱码. 我先给大家说说Pytho ...

  8. python处理excel表格实例-使用Python操作excel文件的实例代码

    使用的类库 pip install openpyxl 操作实现 •工作簿操作 # coding: utf-8 from openpyxl import Workbook # 创建一个excel工作簿 ...

  9. python入门教程2word-入门干货:Python操作Word文件经验分享

    原标题:入门干货:Python操作Word文件经验分享 导读:Microsoft Word在当前使用中是占有巨大优势的文字处理器,这使得Word专用的档案格式Word 文件(.docx)成为事实上最通 ...

最新文章

  1. OpenCV3.2.0+VS2017在window10开发环境配置记录
  2. Python爬虫入门教程 33-100 《海王》评论数据抓取 scrapy
  3. Flask-分开Models解决循环引用
  4. rfcomm工具的使用方法 创建/dev/rfcomm0 并检测
  5. mysql binlog日志查看及解码
  6. 黑鲨4S磁动力升降肩键将全面升级:颜值和按压手感稳步提升
  7. uwsgi+django在ubuntu下命令部署亲测ok
  8. springMVC设置静态资源过滤器,过滤js、css、images等静态资源
  9. 剑指offer-从尾到头打印链表
  10. leetcode—8.同向双指针—滑动窗口题型python解答
  11. Spring 常用注解@RequestMapping @ResponseBody 和 @RequestBody 注解的用法与区别
  12. CF991E Bus Number
  13. 梦幻西游H5游戏超详细图文架设教程
  14. Qt:45---QPainter绘图
  15. 上海瀚示医药行业中文显示电子拣货标签 — 智能播种车
  16. C语言常见问题(7):Remove this redundant cast
  17. SALT安装--CentOS7
  18. 高仿微信 Windows 端
  19. Python_封装案例(士兵突击)
  20. html里怎样返回首页,返回上一页-html页面返回上一页面怎么写

热门文章

  1. SQL-61 对于employees表中,给出奇数行的first_name
  2. STL--priority_queue学习笔记
  3. Winform开发框架中工作流模块的业务表单开发
  4. ACM-ICPC (10/19)
  5. Java网络编程基础(三)---基于UDP编程
  6. android点滴13:Eclipse连接不上模拟器(一片空白,无报错)
  7. VMware 使用 OVF 模版部署虚拟机
  8. linux运维、架构之路-MySQL多实例
  9. 玩了一个人脸识别登录
  10. 2 0 1 8 全球人工智能技术大会--邀请函