使用 AppDomain.CreateDomain 创建的 AppDomain 出现 BadImageFormatException

BadImageFormatException on AppDomain Created Using AppDomain.CreateDomain

我正在尝试查找 BadImageFormatException(未找到索引。)异常的原因。在以下代码的第 2 行抛出异常:

AppDomain _trainingDomain = AppDomain.CreateDomain("TrainingDomain");
_trainingDomain.UnhandledException += new UnhandledExceptionEventHandler(AppDomain_UnhandledException);
_trainingDomain.SetData("RemoteDomain", AppDomain.CurrentDomain);
_trainingDomain.DoCallBack(InitializeRemoteDomain);

如果我注释掉第二行代码,第三行成功执行,然后该方法在第四行代码再次失败并出现相同的异常。

此代码包含在静态方法中,该方法位于包含 AppDomain_UnhandledException 和 InitializeRemoteDomain 方法的同一个静态 class 中。解决方案中的所有项目都是使用 x86 标志和 .NET 4.5.1 编译的。该应用程序在我的开发盒 (Windows 7 Pro x64) 上正常运行,但在生产盒 (Windows Embedded Standard x32) 上运行失败。我认为我使用 CreateDomain 方法创建的 AppDomain 与首先调用 CreateDomain 方法的现有 AppDomain 具有相同的位数。

如有任何帮助,我们将不胜感激!

我发现问题是由于我们在构建服务器上使用的 .NET Reactor 版本来混淆代码。