在Visual Studio 2013中构建失败,提示“无法复制文件...因为找不到该文件”。

5
使用Visual Studio 2013(更新至3)编译多个项目时出现以下错误:

无法复制文件“..”,因为找不到该文件。

无法将“..”复制到“..”。超过了10次重试计数。失败。

无法将文件“..”复制到“..”。该进程无法访问文件“..”,因为它正在被另一个进程使用。

我发现用“Unlocker”工具查看,某些文件被“QTAgent32.exe”阻止。这似乎是一个大问题,可以参考以下链接: https://connect.microsoft.com/VisualStudio/feedback/details/533411 Visual Studio "Could not copy" .... during build
2个回答

3

我尝试过这个,但仍然出现错误。事实上,只需清理解决方案,然后重新构建解决方案,我就可以随时轻松地再现此错误。 - BradH

0
这是由于您的代码中存在循环依赖;请查找类似以下内容的部分:
public record foo
{
    foo parent;
    public foo(foo parent){ this.parent = parent; }
}

foo f1 = new();
foo f2 = new foo(f1);

垃圾回收器将不会进行收集,导致 Visual Studio 失败。确保将父级设置为 null 或者不要使用循环依赖。

public record foo : IDisposable
{
    foo parent;
    public foo(foo parent){ this.parent = parent; }
    void Dispose(){ parent = default; }
}

//this is ok
using foo f1 = new();
using foo f2 = new foo(f1);


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接