Tengo una solución en VS 2008 que crea una DLL. Luego uso esa DLL en otra aplicación. Si voy a las páginas de propiedades de los proyectos DLL y cambio la siguiente configuración para una construcción DEBUG entonces el dll generado no proporciona la funcionalidad deseada. Si cambio de nuevo y reconstruir el archivo DLL, a continuación, la DLL proporciona la funcionalidad correcta:¿Qué hace exactamente la opción "Biblioteca de tiempo de ejecución de DLL con subprocesos múltiples" en VS 2008?
Páginas de propiedades => Propiedades de configuración => C/C++ => Generación de código => Tiempo de ejecución Biblioteca
Si conjunto a "DLL de depuración de varios subprocesos (/ MDd)" y todo funciona como debería. Me da la correcta funcionalidad de la DLL
Si se establece en "DLL multiproceso (/ MD)" continuación, la DLL no funciona correctamente ... no hay errores de ejecución ni nada, simplemente no lo hace trabajo (se supone que el archivo DLL traza algunas líneas en un mapa, pero no en este modo).
Entonces, la pregunta es, ¿por qué usar el indicador/MDd da como resultado la funcionalidad de corrección del código subyacente, mientras que/MD da como resultado una funcionalidad incorrecta?
Un poco de historia ... alguien más desarrolló la DLL en C++ y estoy usando esta DLL en una aplicación VB.net.