Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/339.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使C#程序能够在任何操作系统上编译_C#_Operating System_Badimageformatexception_Initializecomponent - Fatal编程技术网

使C#程序能够在任何操作系统上编译

使C#程序能够在任何操作系统上编译,c#,operating-system,badimageformatexception,initializecomponent,C#,Operating System,Badimageformatexception,Initializecomponent,我已经开始在C#2008的XP 32位windows操作系统上制作C#程序,现在我正试图在windows 7 64位操作系统上打开它。出现的问题是,我无法在64位系统上运行c#2010中的程序,它也无法通过初始化组件();我的代码中的行。它出现了一个错误,“BadImageFormatException未处理”,我想这是因为打开它的位置发生了系统更改。如果能帮上忙,我们会很出色的 谢谢您的构建配置文件设置为AnyCPU、x86或x64是什么?当然,在新机器上编译程序 我假设您在每台计算机上都有对

我已经开始在C#2008的XP 32位windows操作系统上制作C#程序,现在我正试图在windows 7 64位操作系统上打开它。出现的问题是,我无法在64位系统上运行c#2010中的程序,它也无法通过初始化组件();我的代码中的行。它出现了一个错误,“BadImageFormatException未处理”,我想这是因为打开它的位置发生了系统更改。如果能帮上忙,我们会很出色的


谢谢

您的构建配置文件设置为AnyCPU、x86或x64是什么?当然,在新机器上编译程序


我假设您在每台计算机上都有对.NET和Visual Studio的所有更新,对吗?

您面临的问题是您使用任何CPU编译了应用程序。将其更改为x86并重新编译


很可能您有一个依赖的库,它是x86。因为您的应用程序编译为任何CPU,所以Win7 x64系统将其加载为64位应用程序。。。尝试加载32位库时失败。

在构建->配置管理器中,您的平台是否为每个项目设置为“任意CPU”?

我想我已将其设置为任意CPU,而且我在家里的笔记本电脑上,windows 7 64位,无法访问32位xp计算机,因此,需要在我的windows 7 64位系统上使用c#2010对其进行更改,您应该能够重新编译该项目。一些附加信息:这是我发布的,但它只给了我一个“AnyCPU”选项,所以我不能将其更改为其他任何类似“x86”?@Chris,请看“平台目标”而不是“平台”。在VS2008中,前者提供了多个选项,但后者没有。@RoadWarrior:不过,需要注意的是,调试和发布将分别存储这些选项,因此您可能希望同时更改这两个选项。请注意,它不是“平台”,而是“平台目标”。