Solución:
Gracias a todos por las respuestas y ayuda. He descubierto cuál era el problema.
Es porque había un archivo que no estaba completamente cerrado.
Estaba comprobando los archivos que se generaron y me perdí los archivos de los que estaba leyendo el programa.
Todos los archivos que se generaron se cerraron por completo. Fue un archivo que usé StreamReader
abrir pero no cerrar. Modifiqué el código y ahora no tengo problemas, así que supongo que ese era el problema.
Gracias por todos los comentarios y respuestas, que definitivamente me ayudan a pensar y resolver el problema.
Ver http://windowsxp.mvps.org/processlock.htm
A veces, intenta mover o eliminar un archivo o carpeta y recibe una infracción de acceso o un archivo en uso: errores. Para eliminar con éxito un archivo, deberá identificar el proceso que lo ha bloqueado. Primero debe salir del proceso y luego eliminar el archivo en particular. Para saber qué proceso ha bloqueado un archivo, puede utilizar uno de los métodos que se describen en este artículo.
Usando Process Explorer: descargue desde http://download.sysinternals.com/files/ProcessExplorer.zip
Process Explorer le muestra información sobre qué identificadores y procesos DLL se han abierto o cargado.
Descargue Process Explorer del sitio de Microsoft y ejecute el programa. Haga clic en el menú Buscar y elija Buscar identificador o DLL … Escriba el nombre del archivo (nombre del archivo que está bloqueado por algún proceso). Después de escribir la frase de búsqueda, haga clic en el botón Buscar. Debería ver la lista de aplicaciones que están acceder al archivo.