做一下記錄順便幫助一下遇到問題的朋友。
做RDLC報表在WinForm運行,在VS里面調試引用了“Microsoft.ReportViewer.Common.dll”和“Microsoft.ReportViewer.WinForms.dll”調試運行的時候沒有問題。
之后我直接把Bin文件夾下的Debug目錄拷到別的機器上運行,打印的時候出現了“未能加載文件或程序集microsoft.reportviewer.winforms”的錯誤。這是貌似因為在調試
運行的時候Bin目錄的引用的DLL是本地路徑下的,沒有打包成安裝程序在程序目錄下沒有這兩個DLL,於是把這兩個DLL文件拷貝到程序運行目錄下重新在引用。緊接着又蹦出
了一個錯誤。具體的忘記了,大概是 on print Processing 什么的錯誤,這個問題測試了一下如果在運行軟件的目標機器上 安裝了 ReportViewer就不會有這個問題了,可是又
不能在每個客戶機上都安裝一遍ReportViewer。
解決這個問題:
1、可以把ReportViewer.exe文件解壓出來。
2、找到里面的擴展名為“cab”的文件,繼續解壓。
3、找到擴展名為“cab”文件解壓后目錄里的“FL_Microsoft_ReportViewer_ProcessingObject_125592_125592_x86_ln.3643236F_FC70_11D3_A536_0090278A1BB8”。
4、把這個文件拷貝出來更改名稱為“Microsoft.ReportViewer.ProcessingObjectModel.dll”。
最后把這個DLL文件放入Bin文件目錄下在到VS里面引用一下。OK問題解決了!