如何防止我的应用程序在csc.exe中导致0xc0000142错误?

时间:2014-10-08 12:28:40

标签: c# xmlserializer csc

有问题的应用程序是用C#编写的。我们处于开发周期的后期,即将推出我们的应用程序。我的一位同事看到了以下问题:

当他在应用程序运行时退出Windows 7会话时,他会得到一个" csc.exe - 应用程序错误"弹出窗口,显示"应用程序无法正确启动(0xc0000142)。单击“确定”关闭应用程序。"

我相信我已经跟踪了这一事实,我们在退出时更新了应用程序的XML配置文件,代码使用了XmlSerializer。根据{{​​3}},XmlSerializer在运行时根据需要动态启动csc.exe以编译序列化程序集。我怀疑的是,如果我在退出时删除配置文件的更新,那么我的同事不再看到有问题的错误消息。

有人可以更详细地向我解释这里发生了什么吗?为什么在系统注销时执行csc.exe无法正常启动?我是否可以采取一些低风险的解决方案来缓解这个问题?

我考虑过的事情:

  • 使用sgen生成序列化程序集并将其与应用程序一起部署。这听起来很有希望,但我对它的实验非常令人沮丧。它似乎只能为整个程序集或单个类生成DLL,无法指定类列表。此外,当我将其指向我的一个程序集时,它开始抱怨程序集中具有重复名称的类。
  • 使用其他方法读取/写入XML。我对在目前的发展阶段实施这一点没有信心。我们希望尽快推出,这感觉太冒险了。

0 个答案:

没有答案