VB.NET 为 x86 平台编译的应用程序设置不会在 Windows XP/Vista 32 位上运行

Posted

技术标签:

【中文标题】VB.NET 为 x86 平台编译的应用程序设置不会在 Windows XP/Vista 32 位上运行【英文标题】:VB.NET compiled app setup for x86 platform won't run on Windows XP/Vista 32-bit 【发布时间】:2014-04-13 12:13:35 【问题描述】:

在我的 Windows 7 64 位机器上使用 VS 2010 Ultimate,我用 Visual Basic 编写了一个 Windows 窗体应用程序,然后使用专门针对 x86 平台的“构建”命令编译它(我尝试分配“x86”和“任何CPU”在配置管理器中的活动解决方案平台选项上)。我还确保在 Project Properties 上将 TargetPlatform 设置为 x86。

但是,当我尝试在我的 XP 32 位计算机上运行 .exe 或 .msi 文件时,我收到以下消息: “此产品专为 x64 平台设计,但正在 Intel 上安装。请从制造商处获取正确的设置。”

.NET Framework 4 客户端配置文件,它是我的应用程序的先决条件,也安装在 XP 机器上。

有人知道吗?我该如何解决这个问题?

感谢您的宝贵时间。

【问题讨论】:

对于 XP,它必须是 SP3 和 XP Pro。当然,必须安装 NET 框架。 您使用的是哪种安装框架? @Plutonix 确实是安装了 XP Professional SP3 & NET framework 4.0 @MrPaulch 我不明白你的问题,因为我不是经验丰富的 VS 用户。你能说得更具体点吗? 这就是我问的原因,你建立了什么样的设置。使用 VS 的默认 Installer 项目,您在安装程序项目的 Properties 部分中有一个 Configuration Manager 【参考方案1】:

我不确定2010,但在VS2008中,有时需要进入项目属性、编译、高级编译选项,并将目标CPU从AnyCPU更改为x86。

【讨论】:

以上是关于VB.NET 为 x86 平台编译的应用程序设置不会在 Windows XP/Vista 32 位上运行的主要内容,如果未能解决你的问题,请参考以下文章

交叉编译详解

在 .exe vb.net 中编译图像

未能加载的文件或程序集.怎么解决

用VB.NET和VC.NET编译出来的文件是IL格式还是纯PE(EXE)文件格式?

C# 到 VB.Net:为啥转换为 VB 时编译失败?

x86 平台代码移植到 嵌入式平台[交叉编译三方库]