[英]NullReferenceException after catching “A generic error occurred in GDI+.” error for workbook
捕獲錯誤“ GDI +中發生一般錯誤”后出現了一個奇怪的錯誤。
當我嘗試打開Excel文件時,遇到了以下問題:
Workbook workbook = new Workbook();
workbook.LoadFromFile(FileName);
但是在捕獲此異常后幾分鍾,我的應用程序崩潰了(NullReferenceException),而沒有指定錯誤的位置!
知道在我嘗試掃描excel文件時會發生這種情況,但對其他excel文件有效!
我無法找到引發消息“對象引用未設置為對象實例”的異常的位置。 Visual Studio顯示它找不到它!
因此,即使我嘗試在代碼中處理異常,我也一無所有。
有人可以幫我這個話題嗎?
TL:DR; 版本是:
長版
您只能處理您知道如何處理的異常。
要處理異常,而不是僅清理局部變量並重新拋出它,您需要完全了解以下內容:
如果您不了解所有這些內容,那么您將無法正確處理異常。
您遇到的情況是異常(GDI +中的通用錯誤)。 但是,您不知道是什么原因造成的,也不知道如何確保已經解決了可能造成的所有不良后果。
一旦發生異常,您將無法完全理解該異常,則應用程序的內部數據結構可能不再一致。 例如,可能丟失了某些東西,而這些東西本來是假定存在的。
如果真是這樣,可以預料的是,稍后還會出現更多的問題,就像您的情況一樣。
因此,您不應該抓住它,或者至少應該重新拋出它。 現在該退出進程了,並分頁sysadmin找出問題所在。 至少,至少要重新開始。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.