1. 程式人生 > >使用Spire元件丟擲異常The type initializer for 'spr857' threw an exception

使用Spire元件丟擲異常The type initializer for 'spr857' threw an exception

使用Spire元件丟擲異常The type initializer for 'spr857' threw an exception

我使用免費的Spire.Xls元件嘗試去轉換Excel文件到PDF文件,在執行下面第二行程式碼,也就是做載入文件這步時,丟擲了異常“The type initializer for 'spr857' threw an exception

Workbook workbook = new Workbook();

workbook.LoadFromFile("D:\\sample.xlsx");

workbook.SaveToFile("D:\\sample.pdf"

, Spire.Xls.FileFormat.PDF);

這個問題困擾了我老半天,在網上也沒搜到它的解決方案,後來訪問了E-iceblue公司的論壇,才找到了它的解決方案,E-iceblue 公司的技術人員回覆的說是:please make sure Spire.pdf.dll file is placed in the same location as Spire.xls.dll.

根據這個意思我嘗試了兩種方案,都能解決這個問題,在這裡分享一下:

方案1,將Spire.Xls包裡的Spire.pdf.dll檔案拷貝到Spire.Xls.dll相同的目錄下。

方案2,將Spire.XLS.dll

Spire.Pdf.dll同時作為Reference匯入到專案裡。

轉換出來的結果真是完美極了:

原始的Excel

轉換出來的PDF

在使用Spire.Xls的同時,我也在嘗試使用免費的Spire.Doc去做Word文件到PDF文件轉換時,遇到了相同的問題,上面的兩個方案也適用在Spire.Doc元件中。

相關推薦

使用Spire元件異常The type initializer for 'spr857' threw an exception

使用Spire元件丟擲異常The type initializer for 'spr857' threw an exception 我使用免費的Spire.Xls元件嘗試去轉換Excel文件到PDF文件,在執行下面第二行程式碼,也就是做載入文件這步時,丟擲了異常“Th

在Android M及更高版本中使用 Settings.System 異常"You cannot keep your settings in the secure settings. "

最近專案需要從Android L遷移到Android M。在升級的過程中,遇到了如下的問題。  在專案中,有一些公共的資料是存放在存放在 系統資料庫SettingsProvider的System表中  在Android L中的使用方法是:  當需要寫資料時呼叫: Sett

C#中異常:“The type initializer to throw an exception(型別初始值設定項引發異常)”的簡單分析與解決方法

對於C#中異常:“The type initializer to throw an exception(型別初始值設定項引發異常)”的簡單分析,目前本人分析兩種情況,如下: 情況一: 其實麒麟.NET的這篇文章主要講解分析了靜態成員的方面,總的說就是:型別初始化或訪問

ActiveX控制元件調異常災難性錯誤的一個解決方法

ActiveX控制元件 使用#import方式在程式中呼叫,如下: try {       if(SUCCEEDED (m_pOlePrint.CreateInstance(__uuidof(JLPrintECGLib::JLPrintECG))))      {      

stack 處理 pop時異常

leetcode 20 :https://leetcode.com/problems/valid-parentheses/description/ 如果 stack 為空時,pop()會 丟擲exception, 處理的方法如下: try { char top = st.pop(); if (!

java 異常處理之宣告異常

java 異常處理宣告丟擲異常 2.宣告丟擲異常是Java中處理異常的第二種方式 2.宣告丟擲異常是Java中處理異常的第二種方式 如果一個方法(中的語句執行時)可能生成某種異常,但是並不能確定如何處理這種異常,則此方

iOS開發------使用Xcode編譯器定位異常的位置

版權宣告:本文為博主原創文章,歡迎轉載,但未經作者同意必須保留此段宣告,且在文章頁面明顯位置給出原文連線。 https://blog.csdn.net/RunIntoLove/article/details/51297734 雖然Objective-C對異常進行了封裝,但日常敲程式碼的時候,往往

C#中如果用await關鍵字來await一個為null的Task物件會異常

await & async模式是C#中一個很重要的特性,可以用來提高非同步程式(多執行緒程式)的執行效率。但是如果嘗試用await關鍵字來await一個為null的Task物件,會導致程式丟擲NullReferenceException異常。   新建一個.NET Core控制檯專案,貼

Let'sencrypt.sh 異常: Response: <urlopen error [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed (_ssl.c:726)>

起因 今天網站的SSL證書過期了,打算重新申請,執行 Let'sencrypt.sh 的時候丟擲了這麼個異常. 一番搜尋,發現居然找不到直接的答案.沒有直接的答案就只能通過間接的答案來解決了. 希望我的解決過程能成為直接答案,幫助同樣遇到這問題的人. 經過 經過搜尋後發現這是Python下的一個異常.

【C#作業】學生成績新增並排序,錯誤則異常

using System; using System.Collections.Generic; using System.IO; using System.Linq; using System.Text; using System.Threading.Tasks; namespace Cons

throws和throw的區別以及應用,手動異常

首先看一下throws和throw的區別: throws是用來宣告一個方法可能丟擲的所有異常資訊 throw則是指丟擲的一個具體的異常型別。 通常在一個方法(類)的宣告處通過throws宣告方法(類)可能丟擲的異常資訊,而在方法(類)內部通過throw宣告一個具體的異常資訊。 throws通

自定義 ZuulFilter異常

前提:專案中統一使用 HttpResponseCode 來作為服務正常的返回, body 中放具體返回的內容.如果丟擲異常的情況下,期望 code 是4XX,body 中存放錯誤資訊給使用者友好提示但是,在SpringCloud 中預設的異常丟擲是一個包含五個欄位的物件.如下: {

錯誤: 代理異常錯誤: java.rmi.server.匯出異常:已在使用的埠:1099;巢狀的異常java.net.BindException:已經在使用的地址:jvmbind 從伺服器斷開連

問題: 這句話的翻譯如下: 錯誤: 代理丟擲異常錯誤: java.rmi.server.匯出異常:已在使用的埠:1099;巢狀的異常java.net.BindException:已經在使用的地址:jvmbind 從伺服器斷開連線 解決方案: 所以我們只需要找出

vue-cli專案在IE下執行鉤子函式異常“ReferenceError: “Promise”未定義”的解決辦法

相容IE是個坑,低版本IE很多都沒法跑起來 問題現象:vue-cli專案在IE下執行,會在鉤子函數出現 ReferenceError: “Promise”未定義 解決辦法: step1:安裝最新的web-pack-server 命令列:npm install --save-dev web

Python中自定義異常異常

# class ShortInputException(Exception): # def __init__(self,length,atleast): # super().__init__() # self.length = length #

python中如何建立資料夾(以異常為依據)

【時間】2018.11.15 【題目】python中如何建立資料夾(以丟擲異常為依據) 概述 在python中,可以使用os.makedirs(path)建立資料夾,可是如果需要建立多個資料夾,比如你在將包含多個子資料夾中的檔案複製到另一個資料夾中時,這時如果一個個建立資料夾,程式碼會顯

c++ 程式中實現異常

https://blog.csdn.net/WBENTELY/article/details/70240526 丟擲異常(也稱為拋棄異常)即檢測是否產生異常,在C++中,其採用throw語句來實現,如果檢測到產生異常,則丟擲異常。該語句的格式為: throw 表示式;   &

java手動異常並獲取

try{             if(code == null||code.isEmpty()){                   

第四章App4_3,懂得了異常 throws Exception,read為讀取鍵盤輸入數,學會了switch迴圈

package 第四章; import java.io.EOFException; //filename:App4_3.javapublic class App4_3 //定義一個公共類App4_3{ public static void main(String[] args) throws Except

Java 列舉查詢不異常的實現

Java列舉的values() 查詢時,如果傳入無效的名稱則會拋錯。初學者不態注意的話就會直接try catch 返回 null來處理異常,我們知道異常不應該用於控制流。 try { return Function.valueOf(name); } catch (Exce