每当我试图复制4个文件到我的bin文件夹,停止主服务后,我得到一个文件(TexteDll)错误。错误是:

Cannot copy TexteDll: The requested operation cannot be performed on a file 
with a user-mapped section open

这可能是由于一些系统锁定。或者另一个进程正在使用这个DLL。当我在谷歌上搜索时,我发现重新启动系统可以解决这个问题。

有人能给出原因或者解决办法吗?我检查了TexteDll的属性(通用、版本、安全性等)。一切都很正常。


当前回答

我在用Ant构建Dot Net应用程序时看到了这些错误。

在我的例子中,它是我们公司的备份软件,赛门铁克DLO代理。停止它并排除我的杀毒软件中的目录并关闭Visual Studio似乎有效。

其他回答

我是一名开发人员,不喜欢像Unlocker这样的应用注入到注册表中。 我使用SysInternals进程资源管理器,该进程锁定了我的dll查找>查找句柄或dll [Ctrl-F]并杀死了进程。

在我的情况下,我必须杀死一个挂起的MSBuild.exe进程,该进程正在锁定文件(即使在我关闭Visual Studio之后,它仍然存在)。

在我的例子中,是资源管理器锁定了调试文件夹中编译的DLL…很奇怪,不是吗?

我是用一个叫解锁的工具发现的。

必须用Unlocker删除,即使它说文件没有锁,我不能删除文件夹,直到我不删除那个文件……

之后,它进行了编译。

编辑:

我发现了为什么在我的案例中会发生这种情况。我在Visual Studio的文本编辑器中打开了DLL…

不知何故,一个简单的重启解决了我的问题。

我也有同样的问题。重新开始对我没用。在任务管理器中运行着一个名为VBSCompiler的进程。我必须结束这个过程来修复这个错误。