Cada vez que intento copiar 4 archivos en mi carpeta bin, después de detener el servicio principal, recibo un error con un archivo (TexteDll). El error es:
Cannot copy TexteDll: The requested operation cannot be performed on a file
with a user-mapped section open
Puede deberse a algún bloqueo del sistema. O quizás otro proceso está usando esta DLL. Cuando busqué en Google, descubrí que reiniciar el sistema puede resolver esto.
¿Alguien puede sugerir una causa o solución para esto? Inspeccioné las propiedades de TexteDll (general, versión, seguridad, etc.). Todo parece normal.
Respuestas:
En mi caso, fue el Explorer el que estaba bloqueando la DLL que se compiló en la carpeta Debug ... Extraño, ¿no?
Me enteré usando una herramienta llamada Unlocker.
Tuve que eliminar con Unlocker, incluso cuando decía que no había bloqueo sobre el archivo, y no podía eliminar la carpeta hasta que no eliminé ese archivo único ...
Después de eso se compiló.
EDITAR:
Descubrí por qué en mi caso esto estaba sucediendo. Tenía la DLL abierta en un editor de texto dentro de Visual Studio ...
fuente
A veces, cuando hace doble clic en una advertencia sobre la versión de ensamblaje referenciada que no coincide entre dos o más proyectos, olvida cerrar la ventana de vista de ensamblaje y permanece allí entre otras pestañas ... por lo que termina con el ensamblaje bloqueado por VS y me tomó bastante tiempo darme cuenta :)
Tenga cuidado con la potencia que proporciona VS;)
fuente
cierre todos los documentos en VS e intente reconstruir nuevamente. Si no funciona, reinicie VS. Este problema está relacionado con el bloqueo de archivos DLL.
fuente
Cierre Visual Studio, elimine bin, elimine la carpeta de lanzamiento y vuelva a iniciar el proyecto Visual Studio. eso solucionó mi problema
fuente
Tuve el mismo problema y en mi caso parecía que el archivo de salida existente estaba bloqueado por otra aplicación.
Puede verificar qué aplicación está bloqueando su archivo de salida con OpenedFilesView: http://www.nirsoft.net/utils/opened_files_view.html
fuente
Soy desarrollador y no me gustan las aplicaciones inyectadas en Registery como Unlocker. Utilicé SysInternals Process Explorer, proceso que bloqueó mi dll
Find > Find Handle or Dll [Ctrl-F]
y eliminó el proceso.fuente
Otros ya han establecido que este error se debe a que otra aplicación tiene un bloqueo en el archivo. Solo quería señalar que también
git diff
bloquea los archivos hasta que salga de él. Eso es lo que causó esto en mi caso.fuente
Tuve el mismo problema. Cómo lo resolví fue:
fuente
¿Está ejecutando algún software antivirus? Es posible que el software AV (o alguna otra pieza de software) estuviera leyendo el archivo utilizando las API de asignación de archivos que causaron el problema.
fuente
En mi caso, tuve que matar un
MSBuild.exe
proceso de bloqueo que bloqueaba el archivo (estaba allí incluso después de cerrar Visual Studio).fuente
Eliminar la carpeta obj y reconstruir funcionó para mí
fuente
Yo tuve el mismo problema. Reiniciar no funcionó para mí. Había un proceso llamado VBSCompiler que se estaba ejecutando en el administrador de tareas. Tuve que finalizar el proceso para corregir este error.
fuente
Ninguna de las soluciones publicadas aquí funcionó para mí. Era devenv.exe (Visual Studio) bloqueando el archivo, pero si lo reiniciaba, lo volvería a bloquear.
Curiosamente, Windows no me permitió eliminar los archivos (a la Papelera de reciclaje), pero Shift + Delete (eliminación permanente) funcionó.
fuente
Cierre Visual Studio y ejecútelo como administrador. Se solucionó mi problema.
fuente
La solución para mí fue cerrar todas las instancias de VS y eliminar cualquier proceso colgante devenv.exe.
fuente
La solución para mí fue reiniciar la computadora.
fuente
Fue señalado en 2016 por Andrew Cuthbert que git archivos bloqueos de diferencial, así hasta que salga de ella.
Ese no será el caso con Git 2.23 (Q3 2019)
Ver commit 3aef54e (11 de julio de 2019) por Johannes Schindelin (
dscho
) .(Fusionada por Junio C Hamano -
gitster
- en commit d9beb46 , 25 jul 2019)fuente
Estaba viendo estos errores al crear aplicaciones Dot Net con Ant.
En mi caso fue nuestro software de respaldo corporativo, el Symantec DLO Agent. Parece que funciona detenerlo y excluir el directorio de mi software antivirus y cerrar Visual Studio.
fuente
En mi caso, eliminé la carpeta obj en la raíz del proyecto y el proyecto de reconstrucción resolvió mi problema.
fuente
Encontré este error y resultó que el problema era que FxCop se estaba ejecutando en mi proyecto. Cerré FxCop y luego pude compilar nuevamente.
fuente
Si se trata de una aplicación web, la eliminación de archivos en la carpeta Archivos temporales de ASP.NET podría ser una solución.
fuente
Si está utilizando perfiladores como AQ Time, estos también pueden estar bloqueando el archivo. La solución en este caso sería reiniciar el generador de perfiles o simplemente descargar / cargar el ensamblaje en cuestión desde el generador de perfiles. Para AQ Time, noté que está lanzando el archivo después de un tiempo, pero no puedo decir por qué es ese tiempo de espera. Parece ser al azar
fuente
También recibí el mismo error hoy. He resuelto este problema reconstruyendo el proyecto.
fuente
Tuve este error causado por un 'más' vs archivo en cuestión dejado ejecutándose en otra consola. Ups
fuente
Ninguno de los anteriores resolvió este problema.
Alguien tenía un proyecto en mi conjunto de soluciones para usar CPU x64 en la configuración de compilación. Al cambiarlo a Cualquier CPU, la compilación utilizó una nueva carpeta. Todavía no sé qué proceso tenía (tiene) un bloqueo en ese archivo.
fuente
Tuve el mismo problema . Eliminé dll de la carpeta temporal, eliminé el acceso de solo lectura y reinicié la máquina y lo puse a funcionar.
fuente
En mi caso, solo cierro todas las instancias y copio mi carpeta de aplicación raíz y la pego en una ubicación diferente, luego abro la solución en VS, funciona ...
fuente
Mi problema también se resolvió revisando el Explorador de procesos. Sin embargo, el proceso que tuve que eliminar fue el MySQL Notifier.exe que todavía se estaba ejecutando después de cerrar todas las aplicaciones VS y SQL.
fuente