从C#/.NET程序连接到开发(非活动) iSeries时遇到问题
尝试打开新连接时出现以下故障:-
“引发了'System.ExecutionEngineException‘类型的异常。”
HResult -2146233082
“托管调试助手”“FatalExecutionEngineError”“在”“C:\Users\sclose\Documents\Visual Studio 2015\Projects\iSeries1\iSeries1\bin\Debug\iSeries1.vshost.exe'.”“中检测到问题
附加信息:运行库遇到致命错误。错误的地址位于线程0x28bc上的0x71ccec3c。错误代码为0xc0000005。此错误可能是CLR中的错误,也可能是用户代码的不安全或不可验证部分的错误。此错误的常见来源包括COM-interop或PInvoke的用户封送处理错误,这可能会损坏堆栈。
这只是一个非常简单的noddy程序,它设置一个连接字符串并打开一个新的连接:
string ConnectionString = "DataSource=MACH03Y;UserID=sysmon;Password=xxxxxxxxx;LibraryList=U1SCLOSE;Naming=System";
_connection = new iDB2Connection(ConnectionString);已安装Windows7.1的iAccess,并能够通过System i Navigator连接并登录到iSeries
已尝试:-
1)用户of和库列表的各种组合(有效和无效)
2)有效和无效的DataSource值
3)不同的IBM.Data.DB2.iSeries.dll版本,包括最新版本
总是同样的失败
我们知道相同的代码在真实环境中可以成功运行,但这可能是第一次在开发环境中尝试!
通常在dev中,它使用模拟服务,而不是真正的iSeries。
我在iSeries方面比在.NET方面更有经验
认为这可能是网络/防火墙问题?
感谢得到的任何帮助
发布于 2018-01-16 06:26:24
每当我看到这个错误时,它都是Visual Studio调试器的问题。我不认为这是您的代码或IBM.Data.DB2.iSeries.dll的问题。
错误代码5是Windows中的访问冲突。这些调试器崩溃通常可以通过升级Visual Studio或应用最新的service pack来修复。VS2015在很多方面都是扭曲的,因为它是一次彻底的重写,几年前我遇到了这些错误,直到他们修复了它们。首先尝试service pack。如果这不起作用,可以尝试2012或2017版本。可以想象的是,可能是Windows更新打破了这一点。这种情况以前就发生过。
另请参阅:"vshost32.exe has stopped working" OR "fatal execution engine error" in Visual Studio
https://stackoverflow.com/questions/48262118
复制相似问题