SQLite.Interop.dll崩溃没有解释

时间:2015-09-12 14:41:02

标签: c# .net sqlite telerik

我有一个.net winforms应用程序,它分发给多台计算机并使用本地sqlite数据库。

当我启动它时,这个应用程序似乎运行良好,它与sqlite数据库进行良好的通信。

不幸的是,经过一段时间后,应用程序崩溃了,并且在事件日志中只说了以下内容:

  • 系统

  • 提供商

    [名称]应用程序错误

  • EventID 1000

    [Qualifiers] 0

    等级2

    任务100

    关键字0x80000000000000

  • TimeCreated

    [SystemTime] 2015-09-12T05:04:50.000000000Z

    EventRecordID 11046

    频道申请

    计算机COMPUTERNAME

    安全性

    • EventData

    APP.EXE 1.4.0.0 55f3427b SQLite.Interop.dll 1.0.89.0 526c2665 C00000FD 0003ad7c E3C 01d0ecda7737ba11 C:\ Program Files(x86)\ APPFOLDER \ APP.exe C:\ Program Files(x86)\ APPFOLDER \ x86 \ SQLite.Interop.dll cb1e1c14-590b-11e5-80ce-00155d8378f5

我现在添加了一些异常报告,希望能获得更多信息。但我不确定这还不够......

另外,我不确定我能做些什么才能触发问题...

这可能没有关系,但其他人甚至得到了另一个例外的截图:

CLR20r3在System.Data.SQLite中 =>我查了一下,发现了一篇SO帖子: Program Stopped working, Problem Event Name: CLR20r3

所以我修改了app.config以添加:

    <startup useLegacyV2RuntimeActivationPolicy="true" >  
        <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5" />
    </startup>

不确定这是否有帮助,因为我无法重现此问题。

只是想添加此信息以防有人认为这是相关的......

之前有没有人见过这样的事情,什么是最好的行动方案?

PS。该应用程序通过telerik数据访问每隔几分钟与sqlite对话(又名telerik openaccess)=&gt;它只是一个像EF这样的ORM。

1 个答案:

答案 0 :(得分:0)

您是否可以附加WindbgRemote debug with Visual Studio等调试程序?这样,您可以获得有关抛出异常(如果有)的更多信息。

为了更彻底地调试它,我会提取与数据库通信的代码,并创建一个反复运行该部分的小应用程序。既然你说实际与数据库进行通信需要花费几分钟时间,而且由于我们在互操作程序集中得到了错误,那么最好对此进行压力测试。