无法加载文件或程序集'Microsoft.Office.Interop.Word,Version = 12.0.0.0,Culture = neutral,PublicKeyToken = 71e9bce111e9429c'

问题描述 投票:3回答:4

我正在尝试将docx文件转换为pdf,我已经成功地在我的本地电脑上转换pdf。

我在visual studio 2010遵循的步骤是

click on Add reference --> Click to COM -->select "Microsoft Word 12.0 Object Library" and cliked ok

我的Web配置被修改并添加了程序集

<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 ........“

c# asp.net .net pdf office-interop
4个回答
3
投票

Microsoft.Office.Interop.Word.dll复制粘贴到服务器中的bin文件夹中。

可以在此路径中添加它

%ProgramFiles%\Microsoft Visual Studio 12.0\Visual Studio Tools for Office\PIA\但我不知道是否正确:更多细节请看这个MSDN链接

否则,你可以下载这个DLL:https://stackoverflow.com/a/6309218/2218635


0
投票

您是否已将DLL(Microsoft.Office.Interop.Word)复制到可执行路径?

您必须将此DLL复制到本地路径,否则必须在此服务器上安装Microsoft Office。

查看错误似乎应用程序无法在指定路径中找到该文件。

默认情况下,应用程序会首先将DLL找到GAC,然后再找到本地路径。可能还有其他原因,例如版本不同,在这种情况下你也会得到类似的错误。


0
投票

你错过了戴尔版本。

请下载正确版本的DLL。


0
投票

在C#Projects中使用Word的正确过程是:

  1. 添加对Word Interop Library(Assembly)的引用
  2. using部分添加Excel
  3. 现在在编码中使用它。


如果您的PC中安装了Office(Word),则第一步将起作用。如果没有那么安装。然后添加对所需版本的Microsoft.Office.Interop.Word的引用。

一个。如果列表没有显示所需的版本,那么您可能有另一个Office安装Word的愿景。通过The Way,你可以使用任何。

湾如果您没有找到像Microsoft.Office.Interop这样的东西,那么可能没有安装办公室,或者您有Office 2013或更高版本。对于更高版本,您可以通过进入添加引用窗口的COM选项卡添加组件并添加Microsoft Word {version-no} Object Library。这将添加相同。

C。如果你已经在带有黄色三角标记的参考文献中有Microsoft.Office.Interop...那么首先将其删除。



之后第二步将完全奏效:using Word=Microsoft.Office.Interop.Word;



最后,作为第三步,您可以通过Word.Application wApp = new Word.Application();创建Word对象。

© www.soinside.com 2019 - 2024. All rights reserved.