将使用.Net 4.5构build的C#生成的工作簿导出到运行.Net 3.x的系统

对于所有了解InterOp的人来说,这可能是一个非常简单的问题。 我有一个应用程序构build一个Excel工作簿,由四个工作表组成,最后一个工作表包含来自另外三个电子表格数据的图表和表格。 我正在使用Visual Studio 2010和.NET 4.5在C#中工作。 (我必须使用4.5才能生成所需的三维图表)。 一切工作都很好,因为我在我的环境中开发和testing。 但是,当我在运行.NET 3.x的XP机器上安装应用程序时,我收到一条消息,说有必要安装.NET 4.我的问题:有什么办法可以在我的安装中包含.NET 4的必要元素包,所以用户将不必也安装.NET 4?

如果使用InstallShield(而不是在VS 2010之后弃用的MS设置), Installation Requirements的Project Assistant选项卡将允许您指定安装所需的最低要求。 由于.NET 4.5有各种各样的文件和registry设置,如果您尝试手动使用程序集,可能会非常容易将用户从水中拔出。

为了得到幻想,你可以下载和包含.NET 4.5安装程序在Application Files选项卡,以便用户不一定要下载; 虽然由用户下载将确保他们有最新最好的。