Visual studio 2008 VS2008.NET3.5安装程序项目无法从VS2012/.NET4.0添加exe或dll

Visual studio 2008 VS2008.NET3.5安装程序项目无法从VS2012/.NET4.0添加exe或dll,visual-studio-2008,.net-4.0,.net-3.5,setup-project,Visual Studio 2008,.net 4.0,.net 3.5,Setup Project,我们使用VS2008.NET3.5开发了一个较旧的Windows应用程序 我们有一个新的第三方“工具”应用程序,包括使用VS2012和.NET4.0开发的exe和dll 其目的是让较旧的应用程序在其应用程序文件夹的子文件夹中部署此第三方工具。我们已经用这种方式部署了一个单独的VS2010.NET3.5第三方工具。因此,我知道在安装项目中添加第三方DLL和EXE是正常的做法 问题: 我无法将这些新文件添加到安装项目中 来自我的VS2008解决方案的安装项目。我选择文件系统编辑器并在应用程序文件夹下

我们使用VS2008.NET3.5开发了一个较旧的Windows应用程序

我们有一个新的第三方“工具”应用程序,包括使用VS2012和.NET4.0开发的exe和dll

其目的是让较旧的应用程序在其应用程序文件夹的子文件夹中部署此第三方工具。我们已经用这种方式部署了一个单独的VS2010.NET3.5第三方工具。因此,我知道在安装项目中添加第三方DLL和EXE是正常的做法

问题:

我无法将这些新文件添加到安装项目中

来自我的VS2008解决方案的安装项目。我选择文件系统编辑器并在应用程序文件夹下创建相应的子文件夹。然后,我尝试通过右键单击打开相应的上下文菜单来添加第三方VS2012.NET4.0 dll和exe文件,在这里我可以尝试添加文件…程序集…。我得到的只是一个对话框:“操作无法完成”

我试过以管理员的身份运行,也试过在大学的电脑上运行。结果是一样的

拖网表明,原则上应该没有问题。我认为困难在于VS2008试图通过不将这些文件视为匿名文件来显得过于聪明

原因、思路和解决方案

附加:


我甚至尝试将这些文件部署为内容。安装程序现在构建,但会悄悄地忽略它们。

关于“太聪明”的猜测,您可能是对的。您依赖多个.NET版本,这给自己挖了一个相当深的坑。我猜,当它识别.NET 4可执行文件时,它会死掉,但当它检查它们的依赖关系时,它会崩溃,因为VS2008对.NET 4程序集元数据格式一无所知。很有可能您需要在VS2010中创建安装程序,或者为.NET4应用程序创建单独的安装程序,以获得成功。我同意。我不会用VS2008找到解决方案。我需要去别处看看。非常感谢您的回复。