<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.1//EN" "http://www.wapforum.org/DTD/wml_1.1.xml">
<wml>
<head><meta forua="true" http-equiv="Cache-Control" content="max-age=0" /></head>
<card title="c#调用c++dll报出System.ExecutionEngineException异常" id="card1">
<p> 游客</p><p>
标题:c#调用c++dll报出System.ExecutionEngineException异常<br/>
正文:<br/>
执行引擎错误是致命错误，决不应该发生。此类错误主要是在执行引擎被破坏或丢失数据时发生的。系统会随时引发此异常。在可能的情况下，系统将引发比 ExecutionEngineException 异常能提供更多信息的异常。应用程序不应引发 ExecutionEngineException。ExecutionEngineException 使用值为 0x80131506 的 HRESULT COR_E_EXECUTIONENGINE。有关 ExecutionEngineException 实例的初始属性值列表，请参见 ExecutionEngineException 构造函数。解决方法：public static extern void callCamnprDLL(out byte[] ver); 改成 public static extern void callCamnprDLL(byte[] ver); 试试看 疑问：原本：callCamnprDLL(out byte[] ver); ver 这个参数是要传入地址的，用引用类型符 ref / out 因为c++ dll定义是这样的：POI_APIlong callCamnprDLL(UUID2&amp;amp; ver);&amp;amp;是取地址，*是传送指针。 原意是，ver是函数返回的out出来的值，我不需要传值的，只定义一个地址变量。这个比较郁闷。。。布布在线。 Microsoft .NET Framework 1.1 Service Pack 1 for Windows Server 2003<br/><a href="http://camnpr.com/wap.asp?mode=WAP&amp;act=View&amp;id=258&amp;Page=1">[&lt;&lt;]</a><a href="http://camnpr.com/wap.asp?mode=WAP&amp;act=View&amp;id=258&amp;Page=1">[[1]]</a><a href="http://camnpr.com/wap.asp?mode=WAP&amp;act=View&amp;id=258&amp;Page=1">[&gt;&gt;]</a><br/>
<br/>
<a href="wap.asp?act=Com&amp;id=258">查看评论(0)</a><br/>
<a href="wap.asp?act=AddCom&amp;inpId=258">发表评论</a><br/><br/>

<br/>

<br/>
<a href="http://camnpr.com/wap.asp">首页</a>
</p>
</card>
</wml>