【发布时间】:2014-01-18 22:52:52
【问题描述】:
我正在尝试将 docx 文件转换为 pdf,并且我已成功在本地电脑上转换 pdf。
我在visual studio 2010 中遵循的步骤是
click on Add reference --> Click to COM -->select "Microsoft Word 12.0 Object Library" and cliked ok
我的网络配置被修改并添加了程序集
<add assembly="Microsoft.Office.Interop.Word, Version=12.0.0.0, Culture=neutral, PublicKeyToken=71E9BCE111E9429C"/>
我将 doc 转换为 pdf 的 .cs 代码是
using Microsoft.Office.Interop.Word;//Name Space
protected void Page_Load(object sender, EventArgs e)//Coading on page load
{
Microsoft.Office.Interop.Word.Application appWord = new Microsoft.Office.Interop.Word.Application();
wordDocument = appWord.Documents.Open(Server.MapPath("~/convert/goodquest.docx"));
wordDocument.ExportAsFixedFormat(Server.MapPath("~/convert/goodquest.pdf"), WdExportFormat.wdExportFormatPDF);
}
public Microsoft.Office.Interop.Word.Document wordDocument { get; set; }
所有works fine in local,但是当我upload 时,web 上的所有这些都发生了变化。
错误如
Could not load file or assembly 'Microsoft.Office.Interop.Word, Version=12.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c' or one of its dependencies. The system cannot find the file specified.
出现了。 我该如何解决这个问题
我还尝试从链接Here 下载“Microsoft Office 2010:Primary Interop Assemblies Redistributable”,但是当我按照我告诉的步骤操作时,它会将我的“Version=12.0.0.0”转换为“Version=14.0.0.0”之前你大概是“点击添加引用-->点击COM........”
【问题讨论】:
-
我已经更新了我的答案,现在请看那里
-
我已经添加了我从microsoft.com/en-in/download/confirmation.aspx?id=3508 获得的 Microsoft.Office.Interop.Word.dll intp bin 文件夹,现在出现诸如“无法加载文件或程序集'Microsoft.Office.Interop。 Word,Version=14.0.0.0,Culture=neutral,PublicKeyToken=71e9bce111e9429c'" 即将推出
-
您错过了正确的版本,请检查
-
我假设您了解您需要在服务器上安装 Office(并获得适当许可)。请注意,不支持在 ASP.Net 服务器中运行 Office 应用程序-support.microsoft.com/kb/257757。
-
从 ASP.NET 或其他服务器技术使用 Office 互操作是一个可怕的想法。这些 API 是为在桌面应用程序中使用而编写的,用于自动化 Office(一套桌面应用程序)。服务器应用程序在许多方面都不同,这使得在其中使用 Office Interop 是一个非常非常糟糕的主意。它也不受 Microsoft 支持,并且可能违反您的 Office 许可证。见Considerations for server-side Automation of Office
标签: c# asp.net .net pdf office-interop