La carpeta obj
contiene objeto, o intermedios, archivos, que son archivos binarios compilados que aún no se han vinculado. Son esencialmente fragmentos que se combinarán para producir el ejecutable final. El compilador genera un archivo de objeto para cada archivo fuente, y esos archivos se colocan en la carpeta obj
.
La carpeta bin
sostiene archivos binarios, que son el código ejecutable real para su aplicación o biblioteca.
Cada una de estas carpetas se subdivide en las carpetas Debug
y Release
, que simplemente corresponden a las configuraciones de compilación del proyecto. Los dos tipos de archivos mencionados anteriormente se colocan en la carpeta adecuada, dependiendo del tipo de compilación que realice. Esto le facilita la tarea de determinar qué ejecutables están compilados con símbolos de depuración y cuáles fueron creados con las optimizaciones habilitadas y listas para ser lanzadas.
Tenga en cuenta que puede cambiar en Visual Studio da salida a los archivos ejecutables durante una compilación de las propiedades de su proyecto. También puede cambiar los nombres y las opciones seleccionadas para sus configuraciones de compilación.
Por alguna razón, mi proyecto no tiene una subcarpeta de depuración o publicación para las carpetas obj e bin. Si edito la configuración de mi proyecto para compilarla en la subcarpeta de depuración/publicación, dependiendo de la configuración seleccionada en ese momento, recibo el error de que no se pudo crear el tipo de datos cuando depuro mi aplicación. Mi aplicación solo busca en la carpeta bin para los dlls y nunca sabe buscar en la carpeta de depuración o publicación. ¿Cómo puedo corregir esto? –
Solo para aclarar un error tipográfico, tengo una carpeta de depuración y liberación en mi carpeta obj, pero no tengo ninguna carpeta de depuración o publicación en la carpeta bin. –
@Sly No entiendo lo que estás preguntando. Un proyecto crea una aplicación (EXE) o una biblioteca (DLL). No puede construir ambos. Entonces, si su proyecto crea una aplicación, no colocará ninguna DLL en su carpeta bin. Y si su proyecto crea una biblioteca, recibirá un error cuando intente depurarlo porque no puede ejecutar una DLL. De todos modos, parece que ha cambiado la ruta de salida predeterminada en las propiedades de su proyecto. Si necesita más ayuda, haga una nueva pregunta. Asegúrese de documentar bien el problema, incluyendo capturas de pantalla de la configuración de su proyecto si es necesario. –