使用 devenv.com - "ERROR: Unable to update the dependencies of the project"编译安装项目



我在VS 2010中有一个安装部署项目。该项目与VS 2010的GUI界面完美编译,但每当我试图通过VS cmd (devenv.com)编译它时,它会出现这个错误:

ERROR: Unable to update the dependencies of the project.

请注意,错误中没有提到dll(例如,错误不包含"无法确定对象' xxx '的依赖项")。

请不要告诉我清理这个设置中的所有文件并从头开始-这不是一个真正的解决方案!我有5个项目有这个错误,我不想每一个都重新安排。更重要的是,这并不能保证这个问题将来不会再发生。

非常感谢!

我曾经在这些安装程序停止工作(无论出于何种原因)时从头开始重新构建它们,但是我发现了一种更快(而且更不容易出错)的解决方案。这对我很有效。也许它对你有用。

  1. 通过IDE从解决方案中删除安装程序项目界面
  2. 将安装程序项目添加回您的解决方案(添加>现有项目…)

修复程序没有解决我的计算机上的问题(在两台计算机上尝试过,重新启动了所有这些)

相反,我使用源代码管理来找出我的。vdproj发生了什么。

似乎额外的损坏条目被添加到.vdproj的"File"部分。

假设您得到一个错误,如

错误:无法更新项目的依赖项。无法确定对象'AutoMapper.DLL'的依赖项。

在你的。vdproj中搜索AutoMapper,你应该会遇到几个{}在那里使用它。

正常情况下是这样的:

        "{9F6F8455-1EF1-4B85-886A-4223BCC8E7F7}:_263299FB43D185D41A44FBEE0253D3ED"
        {
        "AssemblyRegister" = "3:1"
        "AssemblyIsInGAC" = "11:FALSE"
        "AssemblyAsmDisplayName" = "8:AutoMapper, Version=1.1.0.188, Culture=neutral, PublicKeyToken=be96cd2c38ef1005, processorArchitecture=MSIL"
            "ScatterAssemblies"
            {
                "_263299FB43D185D41A44FBEE0253D3ED"
                {
                "Name" = "8:AutoMapper.DLL"
                "Attributes" = "3:512"
                }
            }
        "SourcePath" = "8:AutoMapper.DLL"

而损坏的块在ScatterAssemblies节中缺少dll的名称(在这种情况下为AutoMapper.DLL)。

删除这个损坏的条目,即从"{9F6F8455-..开始到下一个块的整个部分

我通过手工编辑vdproj并删除层次结构和文件部分,然后重建vdproj来修复这个问题

参见:安装项目错误:无法更新项目的依赖项

这对我有用:

  1. 从VS2010
  2. 运行一个干净的解决方案命令
  3. 资源管理器中的开源代码文件夹
  4. 搜索*.exe文件,按位置排序
  5. 手动删除发布文件夹
  6. 中的所有文件

如果存在被锁定的some_project.vshost.exe文件,在VS中打开该项目的属性,在debug下取消选中"启用Visual Studio托管进程"。然后把它也拿掉。

这是从@timB33的外部链接复制的,它可以工作。所有到MS热修复的链接似乎都坏了,所以这是我唯一能找到的修复方法,而不需要删除和重新创建安装项目。

我一直使用这种方法来绕过这个bug,而不是重新构建我的安装项目。这适用于合并模块项目和安装项目。手动删除项目文件的Hierarchy and Files部分中的数据。

  1. 打开.VDPROJ文件

  2. 找到"Hierarchy"部分。删除所有内容,使部分看起来像这样:"层次结构"{}

  3. 找到"文件"部分。删除所有内容,使部分看起来像这样:"文件"{}

  4. 重新加载项目

  5. 重建项目

  6. 如果缺少某些内容,您可能需要重新添加项目输出

support.microsoft.com/kb/2286556

谢谢Hans,这个更新解决了我的问题。

相关内容

最新更新