无法构建程序,因为它被另一个程序劫持

无法构建程序,因为它被另一个程序劫持

我知道这个问题之前有人问过,但我看过的所有问题似乎都不能回答我的问题。因此,为了确保在有人指责我之前我已经做好了功课,让我告诉你我做了什么导致了错误,以及我尝试了什么来解决这个问题。

这一切都始于两天前。我创建了一个精灵表动画程序,以便我可以快速编辑精灵表。我仍在为该程序添加一些美学元素,但由于功能或多或少都正常,我并没有真正抽出时间去做。不过,那天,我想我至少可以给它添加一个图标。所以我做了一个,将它附加到程序上,然后看着它以它的全部美感出现在任务栏上。

现在我经常使用该程序,但它还没有完成,所以我还没有“发布”它。我想我可以把它固定到我的任务栏上,并且只需引用该程序的 bin/Debug 版本即可。但是,我发现当我这样做时,我那天一直在调整的图标没有正确显示(完全不同的问题,与此无关)。所以我不得不多次固定和取消固定该程序。我知道有时在某些系统上,图标不会更改或正确显示在任务栏上,直到您重新启动计算机。所以在一天结束时,我关闭了它,并在第二天重新启动。它不起作用。

那时,它对我来说似乎并不那么重要,所以我决定推迟编辑并继续我的 spritesheet 工作。过了一会儿,我想看看它的实际效果,所以我通过任务栏启动了我的动画器。就在那时,Avast!开始尝试分析这个东西,看看它是否是病毒。我想“好吧。它不是病毒,但你很快就会发现。”过了一会儿(大约一个小时),事情并没有结束。在多次尝试让该死的过于谨慎的病毒保护不去管我的程序后,我决定取消固定并从 IDE 运行它。那时它工作得很好。之后我重新固定它,它会从任一选项正常运行:通过 IDE 或从任务栏。

又过了一天,重启之后,我决定受够了这个丑陋的图标,又编辑了一次。我把它放进了程序,但当我尝试构建时,它挂在那里的时间比平时更长,然后返回说了这样的话:

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

此消息后面是警告消息,详细说明了尝试构建它的次数(10 次)。

如果您已经读到这里,下面就开始尝试解决问题的方法。

  • 我觉得这很奇怪,所以我决定清理它并重建。我从尝试清理中得到了以下信息:

无法删除文件“C:...\bin\x86\Debug\SpriteSheetAnimator.exe”。拒绝访问路径“C:...\bin\x86\Debug\SpriteSheetAnimator.exe”。

  • 好吧。这太糟糕了。因此,在尝试手动删除 \bin 和 \obj 文件夹后,我发现它仍然不允许我这样做,原因相同。

这些都是一天前的事了。今天我尝试了这些:

  • 我发现进程可以处理这些文件,所以经过一番研究,我从 SysInternalSuite 中找到了 handle.exe可以修复该问题。我尝试在命令提示符中输入“handle -c 18 -y -p 5946”。但是没有成功,从 handle 中返回的只是一个错误:

电视

就是这样。没有拼写错误或遗漏字母。“T”——这就是我得到的所有错误。

  • 我还发现我可以使用同一套件中的 Process Explorer 删除线程。不知何故我有三个线程,尽管该程序不是多线程的。无论如何这没关系;当我尝试杀死它们时,它说我没有访问权限。

就这样吧。我想不出还有什么别的事可做。

我正在使用带有 VS2013 的 Windows 8.1。

Handle 是 4.0 版本

如果您想要句柄转储,请告诉我,我会添加它。它真的很垃圾,而且所有这些可能会因为太长而被删除。

相关内容