C#word转pdf出现的问题

这篇具有很好参考价值的文章主要介绍了C#word转pdf出现的问题。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

之前做word转pdf时经常会遇到一些问题,花费了很长时间整理了一些解决方法
1、 代码

		Microsoft.Office.Interop.Word.Application application = new Microsoft.Office.Interop.Word.Application();
        Microsoft.Office.Interop.Word.Document document = new Microsoft.Office.Interop.Word.Document();
        try
        {
            application.Visible = false;
            document = application.Documents.Open("d://1.doc");
            if (document == null)
            {
                //WriteLog("document is null");//打印日志
            }
            document.ExportAsFixedFormat("d://1.pdf", WdExportFormat.wdExportFormatPDF);
        }
        catch (Exception ex)
        {
           
        }
        finally
        {

            document.Close();
            application.Quit();
        }

一、检索 COM 类工厂中 CLSID 为 {000209FF-0000-0000-C000-000000000046} 的组件时失败,原因是出现以下错误: 80070005。

1、第一种办法
1、 在"开始"->“运行"中输入dcomcnfg.exe启动"组件服务”
2、 依次双击"组件服务"->“计算机”->“我的电脑”->“DCOM配置”
3、 在"DCOM配置"中找到"Microsoft word 应用程序",在它上面点击右键,然后点击"属性",弹出"Microsoft word 应用程序属性"对话框
4、点击"标识"标签,选择"交互式用户"
5、点击"安全"标签,在"启动和激活权限"、”访问权限”、”配置权限”上点击"自定义",然后点击对应的"编辑"按钮,在弹出的"安全性"对话框中填加一个"NETWORK SERVICE"用户(注意要选择本计算机名)和EveryOne用户,并给它赋予"本地启动"和"本地激活"权限
C#word转pdf出现的问题

如果找不到Word请看序号二
2、第二种办法
在web.config中使用身份模拟,在<system.web>节中加入
</system.web>
3、第三种办法
如果环境是Server的:
打开IIS管理工具,设置应用程序池属性;右击对应的应用程序池,单击“高级设置”,在弹出的界面中找到“标识”把其内置账户修改为LocalSystem。这种简单有效。报表和word都可以。

二、如果在DCOM配置里面找不到Word文档怎么办?

  1. 第一种办法
    因为office是32位的,电脑是64位的,在运行里面输入comexp.msc -32
    依次打开”组件服务–计算机–我的电脑–DCOM配置“
    C#word转pdf出现的问题

2、第二种办法
如果第一种办法找不到
Word可能是以这种存在”{00020906-0000-0000-C000-000000000046}“
查看方法:
选中 {00020906-0000-0000-C000-000000000046} 点击属性 找到 本地路径:C:\PROGRA2\MICROS1\Office12\WINWORD.EXE
C#word转pdf出现的问题

如果上面方法还是没找到word组件,请用下面的方法
一般组件在未被赋值权限时,直接使用,会提示
检索 COM 类工厂中 CLSID 为 {000209FF-0000-0000-C000-000000000046} 的组件时失败,原因是出现以下错误: 80070005。
所以此时,复制000209FF-0000-0000-C000-000000000046
在运行中 输入 regedit 打开注册表
进行收索“000209FF-0000-0000-C000-000000000046”,你会找到下面这个:
C#word转pdf出现的问题

将“AppID”修改为“CLSID” 然后保存 重启服务器
之后查看组件服务应该就会出现了
C#word转pdf出现的问题

**

无法将类型为“System.__ComObject”的 COM 对象强制转换为接口类型“Microsoft.Office.Interop.Word.Application”。此操作失败的原因是对 IID 为 ·{00020970-0000-0000-C000-000000000046}”的接口的 COM 组件调用 QueryInterface 因以下错误而失败

**: 库没有注册
这个问题原因是因为安装了高版本的office然后卸载掉,又安装了低版本的office导致的。或者是这个问题就是由于WPS恶意更改了office的Com组件注册权限。

修改hkey_classes_root\typelib{00020905-0000-0000-c000-000000000046}下把8.7的文件夹删掉。
C#word转pdf出现的问题

或者搜索”{00020970-0000-0000-C000-000000000046}“将下面的文件删掉

提示错误信息“未将对象引用到对象实例”

解决方法:缺少插件
C#word转pdf出现的问题

提示错误信息“检索 COM 类工厂中 CLSID 为 {000209FF-0000-0000-C000-000000000046} 的组件失败,原因是出现以下错误: 8000401a 因为配置标识不正确,系统无法开始服务器进程。请检查用户名和密码。”

这种错误很奇怪,因为是在服务器上安装的office2007,只要关闭了远程连接就提示这个错误
(如果没有发生这种错误,还是选择交互式用户)
解决办法:添加用户administrator,并填写密码
C#word转pdf出现的问题

从 IClassFactory 为 CLSID 为 {00024500-0000-0000-C000-000000000046} 的 COM 组件创建实例失败,原因是出现以下错误: 8001010a解决办法

1、在命令行中输入:dcomcnfg,会显示出“组件服务”管理器

2、打开“组件服务->计算机->我的电脑->DCOM 配置”,找到“Microsoft Word文档”,单击右键,选择“属性”

3、在“属性”对话框中单击“标识”选项卡,选择“交互式用户””,关闭“组件服务”管理器。

修改好之后,重启服务器就可以了文章来源地址https://www.toymoban.com/news/detail-455974.html

到了这里,关于C#word转pdf出现的问题的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Linux服务器(centos7)中Word转换PDF,文档出现中文乱码或方格【亲测可用,已解决】

    提示:在centos服务器使用aspose.word转换word文件为pdf的时候只有中文乱码或则方格,但是在win服务器上使用可以正常转换。本次文章主要解决字体缺失问题 提示:word转换pdf在服务器上出现中文乱码或者方格状态(主要问题是字体缺失)。 在centos服务器使用aspose.word转换word文件

    2024年02月08日
    浏览(61)
  • Python—遇到的问题,使用PyPDF2转化pdf时候遇到的各种问题。

    PDF 转化时候出现异常问题,直接出现报错,提示删除了该方法。 上传字体

    2024年02月13日
    浏览(62)
  • 微信小程序 跳转页面经常会遇到判断是否登录情况。基于此需求,做了一个路由跳转拦截的jump组件

    组件代码非常简单 在根目录创建components目录 在components目录新建jump目录 在jump目录新建四个文件 index.js index.json index.wxml index.wxss 这个样式文件内容空就行

    2024年02月09日
    浏览(53)
  • 记一个有关 Vuetify 组件遇到的一些问题

    Vuetify 官网地址 所有Vuetify 组件 — Vuetify Combobox 组合框 — Vuetify   items数据使用对象数组时,默认选中的是整个对象,要对数据进行处理   variableList是一个对象数组,设置了item-value无效,需要在数据变化时实时取需要的字段值 Text field 输入框 — Vuetify 要实现下方文本框标题

    2024年01月16日
    浏览(40)
  • 解决 git clone 时遇到的一些问题

    在使用 git clone 时,出现了以下报错: GnuTLS recv error (-110): The TLS connection was non-properly terminated. 依次输入以下代码: 然后再次使用 git clone 发现可以正常下载了。 输入以下两行代码解决:

    2024年02月16日
    浏览(55)
  • 解决Word打印PDF时,Word中Visio的文字丢失问题

    直接给解决方案: ① 在visio中选择取消组合 ; ②然后选择visio对象,复制; ③在word中选择性粘贴,选择 Microsoft visio绘图对象 ,确定; ④最后重新打印PDF,完成。 在网上找过很多种方法,都不尽如人意,有这样一些可供参考: 1.将visio复制到画图中,转为图片(推荐bmp格式

    2024年02月16日
    浏览(43)
  • 关于写vscode ChatGPT插件遇到的一些问题

    出于对技术的专研想还原ChatGPT里面的一些交互,中间遇到遇到一些小问题做下总结 一、还原里面的富文本展示 chatgpt返回结果是这样的 最终实现效果 这里不仅还原了文本格式的展示,而且也还原了代码高亮。 可以看出chatgpt返回的是markdawn文本格式,要对markdawn文本格式做下

    2024年02月02日
    浏览(44)
  • Python: Django 服务部署可能遇到的一些问题

    不要用 python3 manage.py runserver 启动服务, 而要用: 此外,在 setting.py 中,修改: 在 setting.py 中,修改: 其中,域名有无 https:// 均可 此外,在 应用名/views.py 中,修改: 运行: 在 script 中,声明 WebSocket 时,注意 https 与 wss 对应,http 与 ws 对应:

    2024年02月14日
    浏览(44)
  • 如何安装wsl以及安装时遇到的一些问题

    首先我安装wsl是参考这篇文章:Windows安装WSL详解 讲得挺具体,如果安装过程一切顺利就可以跳过下面的内容了 当我在终端输入 wsl --install 返回了一列数据,但显然不是安装成功 于是我输入 wsl install 时报错显示 适用于 Linux 的 Windows 子系统没有已安装的分发版。 可以通过访

    2024年02月05日
    浏览(74)
  • Unity 开项目遇到的一些问题(模型、场景相关)

            1、在编辑器下查看模型没有问题,打包AB包后出现问题(材质、贴图、Shader 均没有问题),大致是Mesh 顶点数据(法线、切线)丢失         解决办法: 在:ProjectSettings-Player-Other Settings-Optimization-Optimize Mesh Data  改选项默认是开启的  只要勾选掉应该就OK了(这

    2024年02月11日
    浏览(42)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包