c# word 转 pdf 利用word软件的另存为功能

  1. 添加类文件  WordToPDF 详见附件

  2. 调用方法:

  if (WordToPDF.Convert(Server.MapPath(filename), Server.MapPath(dFile)))

                      {

                       resall.playfile = dFile;

                      }else{

                        Page.ClientScript.RegisterStartupScript(this.GetType(), "sc", "<script>alert('该文档被加密,不能转换!');</script>");

                      }

  1. 安装2010或以上版本的office

  2. 给软件的属性 安全性 加上用户 everyone 并设置权限

  3. 权限错误:

    Microsoft Excel 不能访问文件

  4. 检索 COM 类工厂中 CLSID 为 {000209FF-0000-0000-C000-000000000046} 的组件失败,原因是出现以下错误: 80070005 拒绝访问。 (异常来自 HRESULT:0x80070005 (E_ACCESSDENIED))。


      <system.web>

        <identity impersonate="true" userName="Administrator" password="123456"/>

      </system.web>

    解决办法:
    1.
     1).通过webconfig中增加模拟,加入管理员权限,
     <identity impersonate="true" userName="系统管理员" password="系统管理员密码"/>
     2).这样就能够启动Application进程,操作EXCEL了,能够新建EXCEL,导出EXCEL,但是还是不能打开服务器端的EXCEL文件

    2.  
         在组件服务,DOCM设置 Microsoft Excel Application的属性,
         因为是在64位系统上面操作,组件服务中DOCOM中默认是没有的,因为Microsoft Excel Application是32的DCOM配置,所以通过如下方式解决(参考第三步)


    3.
       1).开始--〉运行--〉cmd
       2)命令提示符下面,输入mmc -32,打开32的控制台
       3).文件菜单中,添加删除管理单元--〉组件服务
       4).在"DCOM配置"中找到"Microsoft Excel 应用程序",在它上面点击右键,然后点击"属性",弹出"Microsoft Excel 应用程序属性"对话框
     5).点击"标识"标签,选择"交互式用户"
     6).点击"安全"标签,在"启动和激活权限"上点击"自定义",然后点击对应的"编辑"按钮,在弹出的"安全性"对话框中填加一个"NETWORK SERVICE"用户(注意要选择本计算机名),并给它赋予"本地启动"和"本地激活"权限
       7).依然是"安全"标签,在"访问权限"上点击"自定义",然后点击"编辑",在弹出的"安全性"对话框中也填加一个"NETWORK SERVICE"用户,然后赋予"本地访问"权限.

  5. 4.重新启动IIS,测试通过

  6. 解决每次转的时候 或打开word软件的时候会弹出配置窗口 


打开开始菜单里的运行。先复制命令1,粘贴到运行框里,回车。再复制命令2,粘贴到运行框里回车,命令如下:


命令1(用于Office 2003):reg add HKCU\Software\Microsoft\Office\11.0\Word\Options /v NoReReg /t REG_DWORD /d 1


命令2(用于Office 2007):reg add HKCU\Software\Microsoft\Office\12.0\Word\Options /v NoReReg /t REG_DWORD /d 1


命令2(用于Office 2010):reg add HKCU\Software\Microsoft\Office\14.0\Word\Options /v NoReReg /t REG_DWORD /d 1


如果你是office2007和office2003共存那就选office2007和office2003的命令,如果是office2010和office2003共存,就选office2010和office2003命令OK,现在你可以随便双击打开任何一个Office,绝不会再出现配置界面了。



你可能感兴趣的:(word,pdf,文件转换)