2011-10-30 26 views
2

當我在IDE /調試器外部運行程序時,出現「外部異常C0FB007F」。 我在哪裏可以找到此消息的描述?什麼是Delphi「外部異常C0FB007F」?

我能找到的唯一參考是here但我不使用Jedi。

+0

如何使用調試器來找出它被拋出的位置?不知道是否delphi集成的可以做到這一點,或者如果你需要另一個調試器,如ollydbg。 – CodesInChaos

+0

你能找出哪一行代碼引發異常嗎? –

+1

@CodeInChaos如果olly可以這樣做,集成調試器 –

回答

4

這不是Delphi代碼生成的異常,而是一些外部代碼。

它可能是引發此異常的第三方庫或組件(例如COM對象或外部.dll)。正如Remko所說,它當然是一個第三方庫,它無法解決它的一個依賴關係。

使用an exception logging system來檢索它何時發生。

它可能與this know JCL issue(如果您使用此庫)有關。

4

有SDK中的標頭HRESULT 0xC0FB007F幾個定義:

  • UNEXPECTED_KERNEL_MODE_TRAP bugcodes.h
  • NMERR_REMOTE_VERSION_OUTOFSYNC netmon.h
  • SQL_127_severity_15 sql_err
  • ERROR_PROC_NOT_FOUND Winerror.h中

很難說沒有知道上下文,但ERROR_PROC_NOT_FOUND似乎是最有可能的,這意味着你正在鏈接到一個不存在的dll中的導出。

+0

我不使用任何DLL。 – Ampere

+1

@Altar每個Delphi應用程序都使用DLL。與信息的另一個鏈接[here](http://blog.delphi-jedi.net/2009/08/29/version-checking-for-delphi/)。 –

+0

好的。抱歉。我將重新說明:除了Delphi應用程序正常使用的DLL(GDI32,Kernel等)以及系統中不能丟失的DLL之外,我不使用其他DLL。 – Ampere

3

不是真正的delphi的東西。當在網絡上運行程序時,我們通常會得到外部異常,並且它或其中一個DLL被刪除或失去與網絡的連接,並且應用程序拋出一個外部異常。

1

發生在我身上的時候,當我試圖用一個在以前的Borland C++ Builder中編寫的可執行文件調用一個用Visual C++編寫的DLL時, 生成器不知道如何讀取COFF DLL。我通過用implib(附帶Builder/Delphi)創建一個.lib文件並鏈接到該.lib文件(而不是由VC++創建的文件)來修復它。 Borland的lib文件可以讀取Microsoft DLL。