为什么我会收到“系统数据 dll 中发生系统执行引擎异常类型的未处理异常”错误

本文关键字:系统 异常 引擎 执行 类型 错误 未处理 dll 系统数据 数据 为什么 | 更新日期: 2023-09-27 18:35:56

我正在为 SQL Server 集成服务编写自定义组件 (DLL),在尝试调试组件时收到以下错误:

类型为"System.ExecutionEngineException"的未处理异常发生在 系统数据.dll

当我在没有调试的情况下运行组件时,我没有收到此错误,并且在调试时引发此错误的代码段是此代码的第二行:

DataTable table;
table = new DataTable();

我试过运行这个:http://www.microsoft.com/en-au/download/details.aspx?id=30135但我仍然收到错误。

我还使用以下代码创建了一个简单的窗口表单项目:

       DataTable table;
       table = new DataTable();
       table.Columns.Add("Dosage", typeof(int));
       table.Columns.Add("Drug", typeof(string));
       table.Columns.Add("Patient", typeof(string));
       table.Columns.Add("Date", typeof(DateTime));
        table.Rows.Add(25, "Indocin", "David", DateTime.Now);
        table.Rows.Add(50, "Enebrel", "Sam", DateTime.Now);
        table.Rows.Add(10, "Hydralazine", "Christoff", DateTime.Now);
        table.Rows.Add(21, "Combivent", "Janet", DateTime.Now);
        table.Rows.Add(100, "Dilantin", "Melanie", DateTime.Now);

而且我在调试时没有遇到错误。有谁知道为什么我会收到此错误以及如何调试我的代码?

为什么我会收到“系统数据 dll 中发生系统执行引擎异常类型的未处理异常”错误

通常,

这是由于编译 64 位程序集并尝试从 32 位进程使用它引起的,反之亦然。

我遇到了与 Cooper Cripps 完全相同的问题,当我在 x64 模式下调试应用程序时,我的问题是发生的,当我到达连接时会抛出该错误。打开()。

using(var conn = new SqlConnection(connString)){ conn.Open(); }

但是如果我没有附加调试器(使用 Ctrl+F5 运行),它仍然有效。最后,此问题已通过以下方式重置用户设置得到解决:

C:''Program Files (x86)''Microsoft Visual Studio 14.0''Common7''IDE''devenv" -resetsettings General

如果选中"调试

>常规"选项"使用托管兼容模式",似乎可能会导致此错误。 它使用较旧的调试引擎,并且该调试引擎显然不能很好地与System.Data.dll中的内容配合使用。