问题标签 [executionengineexception]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
102 浏览

silverlight - HttpDuplexBinding Web 服务调用上的 ExecutionEngineException

在过去的一天里,我一直在为一个抛出 ExecutionEngineException 的网络服务而苦苦挣扎。我终于弄清楚 Silverlight 客户端不喜欢 IEnumerable<> 也不 IList<> 也不 List<> 作为返回类型。MyObject[] 很好。

我设法在示例解决方案中重现它:

服务说明:

在客户端,只需创建一个服务引用并调用该服务。服务返回后抛出异常。

任何关于导致问题的想法将不胜感激。

0 投票
2 回答
1364 浏览

c# - P/Invoke 抛出 System.ExecutionEngineException

我有一个用 C++ 编码的闭源非托管 DLL,我想在 C# 解决方案中使用它,所以我创建了一个使用 P/Invoke 调用闭源 DLL 函数的包装器托管 DLL。这对于没有参数函数和 int 变量非常有效。但是,当运行一个更复杂的函数时,我得到一个 System.ExecutionEngineException,该函数将结构数组作为参数,其中包含字符串的字符数组。这是我所拥有的:

以下是我从 DLL 的头文件中获得的信息:

不太清楚为什么将数组大小指定为 long 但无论如何 SizeConst 只采用 int。经过一番搜索,这是我试图解决的问题。

但我仍然有问题。我已经读过,如果函数清除了 CLR 使用的部分内存,则可能会抛出此异常。不幸的是,我无法验证这一点。我的代码中是否存在明显错误并可能导致问题的地方?

0 投票
1 回答
346 浏览

c# - 加载本机 dll 时抛出 ExecutionEngineException

我有一个 32 位 .net 应用程序,它通过 DllImport() 使用本机 32 位 DLL。本机 DLL 是我们的内部文件分析库,我需要使用它,因为如果人们对其进行更新(其他软件使用它),将其移植到 C# 将是一个问题。

问题是,当我尝试在本机 DLL 中执行任何方法时,都会抛出System.ExecutionEngineException 。事实上,我已经将托管应用程序简化为一个只调用本地方法的简单测试器,但它仍然失败。

我在 64 位 Windows 7 上,但这并不重要,因为我将所有内容编译为 32 位二进制文​​件。

同样有趣的是,当我查看 Dependency Walker 中的本机 DLL 时,它显示它找不到 msvcr90.dll - 但是当我在 Dependency Walker 中打开任何其他本机 DLL 时,它可以找到它们引用的 msvcr90 .dll就好了。本地 DLL 的编译是否会因为一些错误而弄乱其 DLL 引用?

0 投票
1 回答
486 浏览

.net - 什么可能导致此 ExecutionEngineException?

我正在尝试使用 Reflection.Emit 在动态程序集中生成包装类。自动包装器生成是我正在编写的名为“GoInterfaces”的新开源库的一部分。

包装类实现IEnumerable<string>并包装List<string>. 在 C# 术语中,它所做的只是:

但是,当我尝试在包装类上调用 GetEnumerator() 方法时,我得到了 ExecutionEngineException。所以我将我的动态程序集保存到一个 DLL 并在其上使用了 il​​dasm。下面的代码有什么问题吗?

我有一个测试套件,它包含各种不同的东西,包括从其他接口派生的接口,以及具有相同签名的多个接口方法。只有当我尝试包装IEnumerable<T>时才会出现此问题。如果有人愿意,我很乐意发送源代码(2 个 *.cs 文件,无依赖项)。

0 投票
0 回答
588 浏览

c# - ExecutionEngineException when calling method on decoupled WMI provider

I've run into a problem where calling a method on a decoupled WMI provider (developed using the WMI Provider Extensions in .NET 3.5) throws an ExecutionEngineException when running more than one instance of my application. Has anyone run into this limitation before or am I doing something wrong?

I created a (simple) WMI provider and publish it the ctor of a (WinForms) form. If you run one instance of the application everything works great; however, if you run multiple instances of the application, one will crash when calling a WMI method.

Here's the WMI provider class (installer class, and form that publishes the WMI object) It's roughly based on this article.

Of course, I use installutil to run the WMI installer class. Next, startup two instances of the application. If you call the "Increment" WMI [ManagementTask] method using the wmic tool on one of the processes then the other will crash (oddly, not the one you invoke).

Any suggestions would be greatly appreciated.

0 投票
1 回答
178 浏览

c - 调用本机代码时抛出 ExecutionEngineException

我有一个由具有以下签名的 C 库导出的函数:

extern "C" BOOL Func()

该函数在 VB.NET 代码中声明如下:

<DllImport("mylib.dll", CallingConvention:=CallingConvention.Cdecl)>

Private Shared Function Func() As Boolean

End Function

问题是当我从 .NET 代码调用该函数时,我得到了一个 ExecutionEngineException。

鉴于在这个 C 代码中BOOL是 typedefint的,声明应该不同吗?如果是这样,我应该如何声明这一点?作为ShortInt32?我需要编组返回值吗?

0 投票
18 回答
146169 浏览

.net - 应用程序因“.NET 运行时内部错误”而崩溃

我们有一个针对 .NET 4.0 编写的应用程序,该应用程序在周末崩溃,将以下消息放入事件日志:

应用程序:PnrRetrieverService.exe 框架版本:v4.0.30319
描述:由于 IP 791F9AAA (79140000) 的 .NET 运行时出现内部错误,退出代码为 80131506,进程已终止。

这是在 Windows Server 2003 R2 标准版框中。谷歌搜索这个错误并没有发现任何相关的东西。例如,这不是在 VS Studio 中发生的,而是在生产盒中发生的;当服务最终重新启动时,它没有遇到进一步的问题。

如何诊断 .NET 运行时中的错误?

0 投票
2 回答
1138 浏览

c# - 未捕获 ExecutionEngineException

我很好奇为什么在执行下面的代码时没有捕获到 ExecutionEngineException。

永远不会到达 WriteLine。任何想法如何捕捉这个异常?

注意:我知道当 DockablePanes 之一处于 AutoHide 模式、可见并且用户试图关闭 wpf 窗口时,AvalonDock 会引发异常。

更新:我已阅读msdn 上有关此异常的备注部分:

CLR 永远不会以托管代码可以捕获它的方式抛出此异常。

所以问题是如何在这样的事情之后很好地关闭应用程序。

0 投票
1 回答
459 浏览

nhibernate - Nhibernate 2.1 with Spring on .net 4 抛出 System.ExecutionEngineException

我有一个可以在运行 Nhibernate 2.1.0.4000 的 .Net 3.5 上运行的网站。我们使用 spring 作为我们的 ProxyFactory。

一切正常。我尝试使用向导将项目升级到 .Net 4.0。一切都很顺利。

但是一旦代码尝试对 Nhibernate 做任何事情,我就会得到一个非常不友好的 System.ExecutionEngineException 异常。没有堆栈跟踪,也没有内部异常。

我们正在使用 NhibernateHelper 类(如下),我已经使用它并且会话配置正常(没有例外)。与 .net 3.5 版本相比,细节没有任何变化

从数据库中获取某些东西的第一次尝试失败了

会话在请求开始时在处理程序中打开(下面未显示)。我们还使用在应用程序启动时设置的统一(不确定是否有任何影响)

第一次调用 Nhibernate 是

我只想要一条错误消息,它意味着某些东西并给我一些继续下去的东西。

我试过查看 NhibernateProfiler 并且注册的所有内容都是会话的开始。

任何帮助深表感谢

NhibernateHelper 类如下

0 投票
2 回答
4161 浏览

c# - 如何找到 System.ExecutionEngineException 异常的来源

我有一个非常大的应用程序。而且我的应用程序有时会抛出 System.ExecutionEngineException,我找不到此异常的来源。有什么办法找到吗?