[研究]ASP.NET,WebForm,使用 OfficeConverter 1.7.10 轉換 .ods 和 .xlsx
2024-10-28
環境:Visual Studio 2022 + ASP.NET + WebForm + Web Application + C# + SQL Server 2019 + SQL Server Management Studio (SSMS) 19
********************************************************************************
相依套件很多
WebApplication1
正在安裝:
Newtonsoft.Json.13.0.3
OpenMcdf.2.3.1
RtfPipe.2.0.7677.4303
System.Buffers.4.5.1
System.Drawing.Common.8.0.8
System.Numerics.Vectors.4.5.0
System.Runtime.CompilerServices.Unsafe.6.0.0
System.Memory.4.5.5
Microsoft.Extensions.Primitives.8.0.0
Microsoft.IO.RecyclableMemoryStream.3.0.1
Microsoft.Maui.Graphics.8.0.82
System.Diagnostics.DiagnosticSource.8.0.0
System.Security.Cryptography.Pkcs.8.0.0
System.Security.Principal.Windows.5.0.0
System.Security.AccessControl.5.0.0
Microsoft.Win32.Registry.5.0.0
System.Threading.Tasks.Extensions.4.5.4
Microsoft.Bcl.AsyncInterfaces.8.0.0
Microsoft.Extensions.DependencyInjection.Abstractions.8.0.0
Microsoft.Extensions.DependencyInjection.8.0.0
Microsoft.Extensions.Logging.Abstractions.8.0.0
SharpZipLib.1.4.2
System.ValueTuple.4.5.0
Microsoft.Extensions.Options.8.0.0
Microsoft.Extensions.Logging.8.0.0
UTF.Unknown.2.5.1
MsgReader.5.6.5
PasswordProtectedChecker.1.3.10
OfficeConverter.1.7.9
********************************************************************************
WebApplication1
更新:
MsgReader.5.6.5 -> MsgReader.5.6.6
Microsoft.Extensions.Logging.8.0.0 -> Microsoft.Extensions.Logging.8.0.1
Microsoft.Extensions.Options.8.0.0 -> Microsoft.Extensions.Options.8.0.2
Microsoft.Extensions.Logging.Abstractions.8.0.0 -> Microsoft.Extensions.Logging.Abstractions.8.0.2
Microsoft.Extensions.DependencyInjection.8.0.0 -> Microsoft.Extensions.DependencyInjection.8.0.1
Microsoft.Extensions.DependencyInjection.Abstractions.8.0.0 -> Microsoft.Extensions.DependencyInjection.Abstractions.8.0.2
System.Security.AccessControl.5.0.0 -> System.Security.AccessControl.6.0.1
System.Security.Cryptography.Pkcs.8.0.0 -> System.Security.Cryptography.Pkcs.8.0.1
System.Diagnostics.DiagnosticSource.8.0.0 -> System.Diagnostics.DiagnosticSource.8.0.1
Microsoft.Maui.Graphics.8.0.82 -> Microsoft.Maui.Graphics.8.0.92
System.Drawing.Common.8.0.8 -> System.Drawing.Common.8.0.10
Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.1 -> Microsoft.CodeDom.Providers.DotNetCompilerPlatform.4.1.0
********************************************************************************
安裝了一堆SDK API檔案
- \CLI\x64
- \CLI\x86
- \CLI\x64\cli_basetypes.dll
- \CLI\x64\cli_cppuhelper.dll
- \CLI\x64\cli_oootypes.dll
- \CLI\x64\cli_ure.dll
- \CLI\x64\cli_uretypes.dll
- \CLI\x86\cli_basetypes.dll
- \CLI\x86\cli_cppuhelper.dll
- \CLI\x86\cli_oootypes.dll
- \CLI\x86\cli_ure.dll
- \CLI\x86\cli_uretypes.dll
********************************************************************************
Default.aspx.cs
using System; namespace WebApplication1 { public partial class Default : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { using (var converter = new OfficeConverter.Converter()) { converter.Convert(@"C:\temp\2.ods", @"C:\temp\2.xlsx"); converter.Convert(@"C:\temp\2.xlsx", @"C:\temp\3.ods"); } } } } |
********************************************************************************
********************************************************************************
'/' 應用程式中發生伺服器錯誤。
無法載入檔案或組件 'cli_cppuhelper' 或其相依性的其中之一。 試圖載入格式錯誤的程式。
描述: 在執行目前 Web 要求的過程中發生未處理的例外狀況。請檢閱堆疊追蹤以取得錯誤的詳細資訊,以及在程式碼中產生的位置。
例外狀況詳細資訊: System.BadImageFormatException: 無法載入檔案或組件 'cli_cppuhelper' 或其相依性的其中之一。 試圖載入格式錯誤的程式。
原始程式錯誤:
在執行目前 Web 要求期間,產生未處理的例外狀況。如需有關例外狀況來源與位置的資訊,可以使用下列的例外狀況堆疊追蹤取得。 |
組件載入追蹤: 下列資訊在確定為何無法載入組件 'cli_cppuhelper' 時是有幫助的。
|
堆疊追蹤:
|
版本資訊: Microsoft .NET Framework 版本:4.0.30319; ASP.NET 版本:4.8.4762.0
********************************************************************************
無法載入檔案或組件 'cli_cppuhelper' 或其相依性的其中之一。 試圖載入格式錯誤的程式。
ChatGPT 說:
這個錯誤通常是由於程式或函式庫的版本不相容或安裝錯誤引起的。cli_cppuhelper 組件常與 OpenOffice 或 LibreOffice API 有關,尤其是在.NET 應用程式中。以下是一些可能的解決方案:
確認程式和函式庫版本相容:檢查 cli_cppuhelper 所屬的函式庫版本與您使用的 .NET 版本是否相容。例如,如果您使用的是 32 位元版本的函式庫,確保您的應用程式也針對 32 位元進行編譯(64 位元同理)。
安裝或重新安裝必須的函式庫:如果您在使用 LibreOffice 或 OpenOffice SDK,請確認其已安裝,並且將其路徑包含在專案的參考中。
設定正確的應用程式架構:在 Visual Studio 中,設定專案的目標架構(x86 或 x64)來符合所安裝的函式庫架構。
清除與重建專案:有時候重新清理並重建專案可以解決這類錯誤。在 Visual Studio 中,選擇 建置 -> 清除方案,然後重新建置。
若問題仍然存在,您可以檢查專案中的內部例外錯誤訊息,以獲取更多詳細的問題資訊。
********************************************************************************
過往使用 LibreOffice SDK 或 OpenOffice SDK 經驗不佳,不想測試了。
********************************************************************************
相關
[研究]ASP.NET,WebForm,使用 OfficeConverter 1.7.10 轉換 .ods 和 .xlsx
https://shaurong.blogspot.com/2024/10/aspnetwebform-officeconverter-1710-ods.html
https://shaurong.blogspot.com/2019/08/c-libreoffice-626-sdk-calc-ods.html
[研究] [C#] 使用 OpenOffice 4.1.3 SDK 讀取試算表(Calc) 檔案 (.ods)
http://shaurong.blogspot.com/2016/12/c-openoffice-413-sdk-calc-ods.html
[研究] [C#] 使用 LibreOffice 5.1.6、5.3.0 SDK 讀取試算表(Calc) 檔案 (.ods)
http://shaurong.blogspot.com/2016/12/c-libreoffice-516-sdk-calc-ods.html
[研究] [C#] 讀取 LibreOffice、OpenOffice 的試算表(Calc) 檔案 (.ods)(使用 .NET 4.5 的 ZipFile)
http://shaurong.blogspot.com/2016/12/c-libreoffice-516-calc-ods-net-45.html
[研究] [C#] 使用 Apose.Cells 讀取 LibreOffice 5.1.6、OpenOffice 4.1.3 試算表(Calc) 檔案 (.ods)
http://shaurong.blogspot.com/2017/01/c-aposecells-libreoffice-516openoffice.html
[研究] [C#] 使用 GemBox.Spreadsheet 讀取LibreOffice、OpenOffice試算表(Calc) 檔案 (.ods)
http://shaurong.blogspot.com/2016/12/c-gemboxspreadsheet-libreofficeopenoffi.html
[研究] OpenOffice 4.1.3 試算表(Calc) 保護鎖定儲存格不被修改
http://shaurong.blogspot.com/2016/12/openoffice-413-calc.html
[研究] 使用OpenOffice 4.1.3試算表(Calc)建立「下拉式選單」來輸入資料
http://shaurong.blogspot.com/2016/12/openoffice-413calc.html
沒有留言:
張貼留言