【问题标题】:WCF Common Language Runtime detected an invalid program on windows XPWCF 公共语言运行时在 Windows XP 上检测到无效程序
【发布时间】:2017-04-24 16:28:31
【问题描述】:

我有一个在 .NET 4 上运行的 Windows 窗体应用程序,它与 WCF Web 服务通信。该应用程序被编译为以 X86 作为平台目标运行。该应用程序部署在由数百台计算机组成的网络上,并且只有几台恰好安装了 Windows XP 版本(Microsoft Windows Embedded POSReady 2009,更准确地说是服务包 3)启动错误“通用语言在调用 WCF 代理类对象的构造函数时,运行时检测到无效程序。为了隔离问题,我创建了一个小型控制台应用程序,它唯一要做的就是调用 Web 服务代理类的构造函数,例如:

ItesWebServiceClient m_webService = new ItesWebServiceClient("BasicHttpBinding_IItesWebService");

然后抛出异常:

stacktrace output

相同的控制台应用程序可在所有其他计算机上运行,​​即使是具有相同 Windows 版本的计算机。

我们已经尝试在故障计算机上修复和重新安装 .Net 框架,但到目前为止还没有任何解决方法。我还使用 PEVerify 工具来验证 MSIL,并按照其他帖子中的建议在调试模式下运行代码(无优化)。

我有什么遗漏吗?是否有需要安装的关键 .Net 框架组件或修补程序?

谢谢

【问题讨论】:

    标签: wcf windows-xp invalidprogramexception


    【解决方案1】:

    好的,原来在机器上重新安装 .Net 框架的人总是在安装 .net 客户端配置文件版本。卸载该版本并安装完整的 .net 4 版本即可解决。

    【讨论】:

      猜你喜欢
      • 2018-02-17
      • 1970-01-01
      • 2017-05-05
      • 2011-05-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-01-25
      相关资源
      最近更新 更多