C/Visual C - Problemas en DEBUG con 2003

 
Vista:

Problemas en DEBUG con 2003

Publicado por david (5 intervenciones) el 27/10/2006 09:38:51
Tengo el visual studio 2003 en castellano instalado
Cuando quiero depurar, NINGUNA aplicación SEA CUAL SEA de MFC que haga me deja ejecutar la versión "Debug", aunque compile bien, nada más arrancar la aplicación siempre me da el fallo: "Debug Assertion failed! Program: C:\test\test.exe File: appcore.cpp Line: 66 ....".

¿Alguien sabe si esta versión de visual studio 2003 tiene un bug y como se puede resolver? He instalado el service pack 1, pero no me ha solucionado el problema.

Por cierto tengo también instalado el visual c++ 6.0, pero en este puedo correr todas las versiones "Debug" y "Relesae" que quiera.

Gracias de antemano.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Problemas en DEBUG con 2003

Publicado por fernando.gomez (1603 intervenciones) el 30/10/2006 17:37:12
Hola. Un assert que se da dentro del código de MFC o del SDK de Windows -como appcore.cpp- usualmente es ocasionado por un mal manejo del código dentro de la aplicación. Recuerda que MFC 6.0 es ligeramente diferente de MFC 7.0.

Quizás lo mejor para esto es que te vayas línea por línea de código para que identifiques en qué llamada a una función de Win32 o de MFC es provocada la aserción. Solo así te podríamos ayudar. O bien viendo el código completo e intentarlo correr (desgraciadamente en mi caso, no cuento con el VS7.1, solo con el 7.0 y el 8.0).

Saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Problemas en DEBUG con 2003

Publicado por david (5 intervenciones) el 30/10/2006 20:24:34
Esto pasa siempre que creo un proyecto, no he tirado ni una sola línea de código, solo creo un proyecto, basado en diálogos, dejo todas las opciones por defecto y cuando intento ejecutar en debug salta la aserción.

Me he instalado el 2005 y también pasael mismo error, pero en otra línea.

El fichero appcore.cpp es del núcleo de las MFC y no se toca. Concretamente el assert da en la línea 66:

Appcore.cpp
nResult = ::GetLocaleInfo(lcid, LOCALE_SABBREVLANGNAME, szLangCode, 4);
if (nResult == 0)
return NULL;
linea 66 => ASSERT( nResult == 4 );

Está claro que es por algo del lenguaje de los recursos o algo parecido, depurando observo que en el código de arriba nResult es igual a 3 y por tanto como debe ser 4 salta el assert.

La pregunta es que si a alguien le ha pasado esto ¿como lo ha solucionado?

Mi Windows XP SP2 está en castellano y el Visual Studio 2003 y 2005 también.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar