在win 2008 r2上迁移.net 2.0控制台应用程序

时间:2011-12-22 18:27:14

标签: c# .net exception nlog

我有一些旧的32位控制台.NET 2.0应用程序应该迁移到win2008 r2服务器。

注1: 我有一个旧的32位应用程序没有加载任何程序集并且工作正常。

注2: 当我启动其中一个应用程序时 System.BadImageFormatException无法加载文件或程序集错误

注3: 他们每个人都使用 NLog 版本0.9.0.0。当我在新服务器上启动这些应用程序时,我在nLOG.txt中遇到以下异常:

错误无法加载特定于平台的扩展:System.NullReferenceException:未将对象引用设置为对象的实例。 在NLog.FilterFactory.AddFiltersFromAssembly(Assembly theAssembly,String prefix) at NLog.Config.XmlLoggingConfiguration.LoadExtensionsFromAssembly(Assembly asm,String prefix) 在NLog.Config.XmlLoggingConfiguration.RegisterPlatformSpecificExtensions(String name)

您能帮我们解决这个问题吗?提前谢谢。

Deveti Putnik

2 个答案:

答案 0 :(得分:3)

转到项目设置,确保将目标构建为32位(x86)和“所有平台”。

您遇到的问题是尝试访问32位DLL的64位可执行文件。默认情况下,.NET可执行文件在64位操作系统上以64位运行。

答案 1 :(得分:0)

对于第3点:为什么不将NLog升级到2.0,对于第2点:“System.BadImageFormatException无法为哪个程序集加载文件或程序集”你能找到导致此问题的程序集名称,它应该在错误消息中< / p>