关于C# spire.doc,Document新建实例的问题

Ruff_Boy 2017-04-07 10:13:14
新建Document实例的话可以用string地址或者文件流,但是文件被打开的情况下不能再次用地址创建,那么该怎么办呢,用ActiveDocument可以获取当前文档,但是怎么将这个转换到spire.doc 的Document里呢?
...全文
465 9 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
Poopaye 2017-04-07
  • 打赏
  • 举报
回复
Document doc = new Document(docPath);
  • 打赏
  • 举报
回复
不能。
  • 打赏
  • 举报
回复
引用 6 楼 Ruff_Boy 的回复:
[quote=引用 4 楼 duanzi_peng 的回复:] 文件“D:\OleObject.docx”正由另一进程使用,应该是 doc.LoadFromFile(docPath); 这句的错。 -》这个docx 被其它进程打开了占用了,必须关掉和它有关的进程占用。
文件是必须要打开才能操作插件的,有没有办法能不创建实例就可以调用Sections 或者可以将ActiveDocument变成流然后赋给Document呢[/quote]你现在能调试出来 是那个地方的错么?
Ruff_Boy 2017-04-07
  • 打赏
  • 举报
回复
引用 4 楼 duanzi_peng 的回复:
文件“D:\OleObject.docx”正由另一进程使用,应该是 doc.LoadFromFile(docPath); 这句的错。 -》这个docx 被其它进程打开了占用了,必须关掉和它有关的进程占用。
文件是必须要打开才能操作插件的,有没有办法能不创建实例就可以调用Sections 或者可以将ActiveDocument变成流然后赋给Document呢
Ruff_Boy 2017-04-07
  • 打赏
  • 举报
回复
不新建实例的情况 直接用active的sections foreach (Section sec in Globals.ThisAddIn.Application.ActiveDocument.Sections) 会报错误 已引发: "无法将类型为“System.__ComObject”的 COM 对象强制转换为类类型“Spire.Doc.Section”。表示 COM 组件的类型实例不能强制转换为不表示 COM 组件的类型;不过,只要基础 COM 组件支持对接口 IID 的 QueryInterface 调用,就能将这些实例强制转换为接口。" (System.InvalidCastException) 异常消息 = "无法将类型为“System.__ComObject”的 COM 对象强制转换为类类型“Spire.Doc.Section”。表示 COM 组件的类型实例不能强制转换为不表示 COM 组件的类型;不过,只要基础 COM 组件支持对接口 IID 的 QueryInterface 调用,就能将这些实例强制转换为接口。", 异常类型 = "System.InvalidCastException", 异常 WinRT 数据 = null
  • 打赏
  • 举报
回复
文件“D:\OleObject.docx”正由另一进程使用,应该是 doc.LoadFromFile(docPath); 这句的错。 -》这个docx 被其它进程打开了占用了,必须关掉和它有关的进程占用。
Ruff_Boy 2017-04-07
  • 打赏
  • 举报
回复
引用 2 楼 shingoscar 的回复:
先关掉这个文件,或者关掉使用它的进程
这是写的插件,本来就是要打开这个文档,在文档中操作的
Poopaye 2017-04-07
  • 打赏
  • 举报
回复
先关掉这个文件,或者关掉使用它的进程
Ruff_Boy 2017-04-07
  • 打赏
  • 举报
回复
相关代码 String docPath = Globals.ThisAddIn.Application.ActiveDocument.Path + @"\" + docFileName; Document doc = new Document(); doc.LoadFromFile(docPath); foreach (Section sec in doc.Sections) 错误“System.IO.IOException”类型的异常在 mscorlib.dll 中发生,但未在用户代码中进行处理 其他信息: 文件“D:\OleObject.docx”正由另一进程使用,因此该进程无法访问此文件。

111,093

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • AIGC Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧