技術(shù)頻道導(dǎo)航
HTML/CSS
.NET技術(shù)
IIS技術(shù)
PHP技術(shù)
Js/JQuery
Photoshop
Fireworks
服務(wù)器技術(shù)
操作系統(tǒng)
網(wǎng)站運(yùn)營

贊助商

分類目錄

贊助商

最新文章

搜索

Could not load file or assembly Microsoft.Office.Interop.Word

作者:admin    時(shí)間:2021-8-19 11:17:36    瀏覽:

今天更新了一下程序,運(yùn)行時(shí)卻出現(xiàn)了如下提示的錯(cuò)誤:

Exception Details: System.IO.FileLoadException: Could not load file or assembly 'Microsoft.Office.Interop.Word, Version=14.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c' or one of its dependencies. The located assembly's manifest definition does not match the assembly reference. (Exception from HRESULT: 0x80131040)

根據(jù)提示語句,我知道是因?yàn)槌绦蛞昧薟ord集合(Microsoft.Office.Interop.Word.dll)的原因,但是這個(gè)引用并不是現(xiàn)在才添加,而是很久以前就開始使用了,并且沒有任何問題。

再看看提示語句,說到有兩個(gè)可能原因所致:1、沒有找到文件 2、定位的程序集定義與程序集引用不匹配。

Could not load file or assembly Microsoft.Office.Interop.Word
(點(diǎn)擊圖片放大)

我檢查了一下,該引用文件是在bin文件夾里的,排除了“找不到文件”這個(gè)原因。把鼠標(biāo)移到文件上面,顯示文件版本是12.0,這與錯(cuò)誤報(bào)告里的Version=14.0.0.0是不匹配的,可能就是這個(gè)原因了。

Microsoft.Office.Interop.Word.dll 版本號(hào)

認(rèn)真想了一下,以前之所以沒問題,是因?yàn)楸镜仉娔X安裝的office是2003,跟服務(wù)器上的版本一致,而近期本地安裝的office是2010,所以.net里的引用版本就改變了,跟服務(wù)器上的不一致了。

(這里我有點(diǎn)不明白,我程序引用的是bin文件夾里的文件(Microsoft.Office.Interop.Word.dll)沒有變,為什么編譯后卻變成了本機(jī)安裝的office版本?)

解決方法

知道了原因,解決起來就容易了。我如果在服務(wù)器也安裝office2010,問題就能解決。

但是我覺得安裝office2010非常麻煩,想用簡(jiǎn)單點(diǎn)的方法。于是我就想,能否用版本為14.0的dll文件(Microsoft.Office.Interop.Word.dll)來替換服務(wù)器里程序使用的bin文件夾下的舊文件?

試一試看看。

立即在網(wǎng)上下載該版本的dll(Microsoft.Office.Interop.Word.dll)文件,拷貝到服務(wù)器里程序bin文件夾下,替換舊的文件。

重啟IIS。

運(yùn)行程序。

竟然,成功了!

總結(jié)

解決方法:
1、下載對(duì)應(yīng)版本的dll文件,拷貝到bin目錄。
2、VS編寫程序時(shí)引用這個(gè)文件。
3、最后在實(shí)際應(yīng)用環(huán)境中,也要把此dll文件拷貝到bin目錄下。
4、重啟IIS

 

標(biāo)簽: Word  
相關(guān)文章
    x