dynamic - una - Archivos DLL y LIB
librerias de visual studio (1)
¿Cuál es la diferencia entre un archivo DLL y un archivo LIB? ¿Qué hay dentro de un archivo DLL y qué hay dentro de un archivo LIB? ¿Son necesarios los archivos DLL y LIB para crear un ejecutable?
Un archivo DLL es el producto final de compilación, eso es lo que instala en la máquina de su cliente. Es muy similar a un archivo EXE, con la misma estructura, pero se puede cargar bajo demanda en otro programa.
Un archivo LIB se utiliza para construir su programa, solo existe en su máquina de compilación y no lo envía. Hay dos tipos. Una biblioteca de enlaces estáticos es una bolsa de archivos .obj, recopilados en un único archivo. El vinculador selecciona cualquier fragmento de código del archivo cuando necesita resolver un identificador externo.
Pero más relevante para las DLL, un archivo LIB también puede ser una biblioteca de importación. Es entonces un archivo pequeño y simple que incluye el nombre de la DLL y una lista de todas las funciones exportadas por la DLL. Tendrá que proporcionarlo al enlazador cuando construya un programa que use la DLL para que sepa que un identificador externo es realmente una función exportada por la DLL. El vinculador usa la biblioteca de importación para agregar entradas a la tabla de importación para el EXE. Que a su vez es utilizado por Windows en tiempo de ejecución para averiguar qué archivos DLL se deben cargar para ejecutar el programa.