2010-10-29 56 views
4

我在一个漂亮的Windows窗体.net(C#)应用程序上开发了几个装配。最初,每个程序集都是为Target Platfom“任何CPU”构建的。 由于Crystal Reports在x64机器上存在问题,我们不得不为x86目标平台构建整个项目。我开始重建一些我们的x86项目,它工作得很好。 但有一个我有,当我尝试使用它作为其他程序集的基准,其他人会不会加载它赋予以下错误的问题:由于格式不正确导致装配失败

Could not load file or assembly #MyAssembly# or one of its dependencies. An attempt was made to load a program with an incorrect format.

当水晶中的示例项目周围播放与多个程序集中,我发现当为不同的目标平台构建项目时会发生此错误。但在这里并非如此。我为X86构建了所有项目,但无法确定问题出在哪里。

+0

您是否检查过任务管理器,如果您的应用程序实际上是在32位模式下运行的? – testalino 2010-10-29 06:52:54

回答

6

你可以尝试,打造您的MainProject(可执行文件)与目标平台“86”或“64”,就设置为“任何CPU”的所有其他项目。

+0

是的,这是行不通的。似乎包括为x86构建的程序集不能包含在为任何CPU构建的应用程序中。 (至少这是我的经验) – Robert 2010-10-29 06:58:12

+1

@Robert Spari:只有MainProject(WindowsForms)和Main-Methode应该用“x86”编译。所有其他项目(库)都应该编译为“任何CPU”。 – Jehof 2010-10-29 07:10:54

+0

对不起,你是完全正确的,我只是把它交给测试。非常感谢 – Robert 2010-10-29 07:30:59

相关问题