对 COM 组件的调用返回了错误 HRESULT E_FAIL。

cxl1195958700 2015-11-05 08:36:44
InlineShape inlineShape = oWordApplic.Selection.InlineShapes.AddPicture(FileName, ref LinkToFile, ref SaveWithDocument, ref Anchor);
提示错误:对 COM 组件的调用返回了错误 HRESULT E_FAIL。请问是什么问题?求解!!
...全文
443 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
cxl1195958700 2015-11-05
  • 打赏
  • 举报
回复
引用 1 楼 findcaiyzh 的回复:
error code是多少? 一般是没安装Office,或者没有权限访问office 的COM组件。
error code是-2147467259
cxl1195958700 2015-11-05
  • 打赏
  • 举报
回复
引用 1 楼 findcaiyzh 的回复:
error code是多少? 一般是没安装Office,或者没有权限访问office 的COM组件。
没提示error code,AddPicture这个功能要调用什么office的com组件?我运行过一次是可以正常在word里添加图片,但是突然就报这个错误了
宝_爸 2015-11-05
  • 打赏
  • 举报
回复
error code是多少? 一般是没安装Office,或者没有权限访问office 的COM组件。
cxl1195958700 2015-11-05
  • 打赏
  • 举报
回复
引用 4 楼 findcaiyzh 的回复:
[quote=引用 3 楼 cxl1195958700 的回复:]
[quote=引用 1 楼 findcaiyzh 的回复:]
error code是多少?
一般是没安装Office,或者没有权限访问office 的COM组件。

error code是-2147467259[/quote]

-2147467259 应该是16进制的80004005,意思是unspecified error,帮不上什么忙。

搜索后发现可能跟兼容性有关系,把这个设置一下试一试
ActiveDocument.SetCompatibilityMode(wdWord2003),还有说要把Office更新到最新的Update的。
可以都试一试。
[/quote]
试了还是不行,后面找到解决问题的办法了,
InlineShape inlineShape = oWordApplic.Selection.InlineShapes.AddPicture(picPath, ref LinkToFile, ref SaveWithDocument, ref missing);
这个方法其实是宏所以需要用启用宏的模板,就是.dotm后缀的,而我之前用的是.dot模板,用不了宏。所以。。。。。
宝_爸 2015-11-05
  • 打赏
  • 举报
回复
引用 3 楼 cxl1195958700 的回复:
[quote=引用 1 楼 findcaiyzh 的回复:] error code是多少? 一般是没安装Office,或者没有权限访问office 的COM组件。
error code是-2147467259[/quote] -2147467259 应该是16进制的80004005,意思是unspecified error,帮不上什么忙。 搜索后发现可能跟兼容性有关系,把这个设置一下试一试 ActiveDocument.SetCompatibilityMode(wdWord2003),还有说要把Office更新到最新的Update的。 可以都试一试。

110,534

社区成员

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

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

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