C# 启动安装程序时不是有效的win32应用程序

C# 启动安装程序时不是有效的win32应用程序,c#,windows,visual-studio-2012,installation,nsis,C#,Windows,Visual Studio 2012,Installation,Nsis,我使用visual studio 2012创建了一个c#应用程序,并使用了4.5框架。我使用NSIS(HM-NIS-EDIT向导)创建了一个安装程序。该安装程序在windows 7 32和64位上运行良好。但当我尝试在windows Xp上运行安装程序时,它给了我一个错误,说不是有效的win32应用程序。我希望它也能在windows XP上工作 我想知道可能的原因是什么 1) 我应该将框架更改为3.0还是3.5 2) 或者我必须更改NSIS中的代码 请建议 我的安装程序的链接 谢谢,Window

我使用visual studio 2012创建了一个c#应用程序,并使用了4.5框架。我使用NSIS(HM-NIS-EDIT向导)创建了一个安装程序。该安装程序在windows 7 32和64位上运行良好。但当我尝试在windows Xp上运行安装程序时,它给了我一个错误,说不是有效的win32应用程序。我希望它也能在windows XP上工作

我想知道可能的原因是什么

1) 我应该将框架更改为3.0还是3.5

2) 或者我必须更改NSIS中的代码

请建议

我的安装程序的链接


谢谢,Windows XP不支持.NET 4.5。这是没有办法的。NET 4.0是支持Windows XP SP3的最新版本。您可以使用NuGet软件包添加许多4.5功能,例如用于
async/await
支持和用于HttpClient。

我认为您的安装程序不是使用NSIS创建的,而是使用高级安装程序创建的。我尝试在Win7 Pro 64位上运行它,结果是“系统找不到指定的文件”。

谢谢Panagiotic,我会尝试。但是将框架更改为4.0会解决问题吗?如果没有确切的错误消息或查看安装程序日志,我无法告诉您。您可能尝试在32位计算机上运行64位安装程序,在这种情况下,安装甚至没有启动。但可以肯定的是,4.5程序不会在Windows XP上运行。这是我的安装程序的链接。如果您能在您的系统上测试它,我将不胜感激。我是.net新手,仍然了解到错误消息不是有效的win32应用程序,我已将32位和64位安装程序打包到一个包中,该包将检测您正在使用的操作系统,并基于此将文件复制到任一程序文件(32)或者64 folderSorry@Slappy,我也在试用高级安装程序。我使用高级安装程序向主安装包添加了一个.exe文件,但当我在客户端计算机上运行它时,会出现一个错误,显示“系统找不到指定的文件”。你能帮我解决这个问题吗?指向nsis安装程序的链接为