2014-08-29 236 views
5

所以我有C++播放器项目,其中有2个其他项目依赖项,这两个项目都有后建立事件将dll复制到另一个文件夹。该项目正在建设,然后决定不随机工作,从那时起,我还没有找到解决方案。即使从SVN中清理完毕,它仍然不起作用,除了我之外,它适用于所有其他开发者。Visual Studio发布内部复制命令错误MSB3073退出代码1

我检查了错误消息中的路径,它们确实存在,目标dll也一样。

生成后事件中的每一个相关的项目:

copy $(TargetPath) $(ProjectDir)..\..\$(Configuration)\plugins\$(ProjectName).dll 

产生的错误:

error MSB3073: The command "copy C:\CMDev\CM2\Client\Apps\SSEP\Player\ACRP\CIAP\Debug\CIAP.dll C:\CMDev\CM2\Client\Apps\SSEP\Player\ACRP\CIAP....\Debug\plugins\CIAP.dll:VCEnd" exited with code 1. C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\V120\Microsoft.CppCommon.targets 131 5

当前设置:

  • 运行Windows 7旗舰版Service Pack 1的
  • Visual Studio Pro v12.0.30723.00更新3,在Administr下运行ATOR。

有什么我想:

  • 更新的Visual Studio 2013专业版更新3(从更新1)与周围的例如/ Y参数每个路径
  • 包装报价复制/ Y“源”“目标”
  • 尝试xcopy。
  • 单独尝试清洁并重新构建eaach依赖项。
  • 卸载了Visual C++ 2010和2012,x86和x64 Redistributable,并重新安装了所有4个版本。

我还能试试吗?

+2

听起来像你已经尝试了很多事情来调查你的问题。但是,您是否尝试过启用[项目日志记录?](http://blogs.msdn.com/b/vsproject/archive/2009/07/21/enable-c-project-system-logging.aspx)它适用于我在VS2012中,它可能会指出问题所在。 – rrirower 2014-08-29 12:02:24

回答

3

问题是VS如何追加:VCEnd后缀。不知怎的,microsoft.CppCommon.targets文件被错误地修改了。

<PropertyGroup> 
     <_BuildSuffix> 
:VCEnd</_BuildSuffix> 
    </PropertyGroup> 
1

当双击编译器错误时,我被带到同一个文件(microsoft.CppCommon.target)。但是,此文件作为Visual Studio安装的一部分进行安装,不能保存(由于其权限)可写,因此似乎是一个红鲱鱼。该文件的内容与@user1883004's answer中的内容相同。

与源控制系统,我做了以下内容:

  1. 关闭Visual Studio的
  2. 从项目的根从源头控制
  3. 打开Visual Studio删除所有文件,并强行重新下载,并重新编译。

没有源代码控制系统,尝试的步骤这种变化: -

  1. 关闭Visual Studio的
  2. 手动删除调试/发布(或任何其他产生子目录)
  3. 开放Visual Studio,并重新编译。

注意,无论是清理解决方案也不重建解决方案为我工作。

+0

这对我有用,但我必须在Visual Studio中创建一个新项目,并将所有文件复制到新项目中。 – 2016-11-07 12:30:17