elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Usando Git para manipular el directorio de trabajo, el índice y commits (segunda parte)


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse, K-YreX)
| | |-+  compilando en debug modo
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: compilando en debug modo  (Leído 4,954 veces)
laephy

Desconectado Desconectado

Mensajes: 6


Ver Perfil
compilando en debug modo
« en: 20 Septiembre 2011, 23:12 pm »

Hola,

no se si este tema corresponde aquí o no. De todas formas aquí os dejo mi pregunta.

Me han pasado un programa realizado en vc++ 6.0 y en el cual la compilacion tanto en debug modo como en release modo funcionaba. Ahora lo he intentado yo compilar con el vs 2005. No tengo ningún problema a la hora de "build" el ejecutable, pero si intento hacer un debug me da el siguiente error:

Citar
Application error: The instruction at "0x7c910c8e" referenced memory at "0x68636552". The memory could not be "read".

Lo mas curioso de todo, que sin embargo si puedo hacer el debug en modo release sin problemas.

Alguien me podría explicar porque ocurre este error? Como es posible que haga el debug en modo release y no en modo debug? A que puede deberse?

Muchas gracias de antemano.

Laura


En línea

Eternal Idol
Kernel coder
Moderador
***
Desconectado Desconectado

Mensajes: 5.969


Israel nunca torturó niños, ni lo volverá a hacer.


Ver Perfil WWW
Re: compilando en debug modo
« Respuesta #1 en: 20 Septiembre 2011, 23:34 pm »

Dificil de saber con esos pocos datos, la version de depuracion contiene algunas trampas para detectar problemas pero la direccion parece ser de una DLL del sistema ... depuralo con WinDbg y simbolos.


En línea

La economía nunca ha sido libre: o la controla el Estado en beneficio del Pueblo o lo hacen los grandes consorcios en perjuicio de éste.
Juan Domingo Perón
laephy

Desconectado Desconectado

Mensajes: 6


Ver Perfil
Re: compilando en debug modo
« Respuesta #2 en: 21 Septiembre 2011, 22:55 pm »

¿Que datos necesitas saber para poder ayudarme?

No conozco el programa WinDbg, ¿dónde puedo conseguirlo y cómo funciona?
En línea

Eternal Idol
Kernel coder
Moderador
***
Desconectado Desconectado

Mensajes: 5.969


Israel nunca torturó niños, ni lo volverá a hacer.


Ver Perfil WWW
Re: compilando en debug modo
« Respuesta #3 en: 21 Septiembre 2011, 23:11 pm »

Y un minidump por ejemplo pero lo ideal es que lo hagas vos mismo con el WinDbg. Lo podes bajar con el SDK de Windows, es el paquete "Debugging tools for Windows". Tambien te recomiendo instalar el "Application Verifier".
En línea

La economía nunca ha sido libre: o la controla el Estado en beneficio del Pueblo o lo hacen los grandes consorcios en perjuicio de éste.
Juan Domingo Perón
laephy

Desconectado Desconectado

Mensajes: 6


Ver Perfil
Re: compilando en debug modo
« Respuesta #4 en: 28 Septiembre 2011, 00:29 am »

Al final me he instalado el Windbg y después de buscar un poco de información en internet sobre como funcionaba he intentado depurar mi programa. Pero la verdad que no entiendo muy bien, lo que aparece en pantalla.

Me pueden explicar como puedo solucionar el Access violation - code c0000005 (first chance) que aparece al final de la pantalla en el Windbg.

Citar
CommandLine: "C:\PRESSURE\pressure.exe"
Symbol search path is: SRV*c:\websymbols*http://msdl.microsoft.com/download/symbols
Executable search path is: C:\PRESSURE\Debug
ModLoad: 00400000 0044b000   pressure.exe
ModLoad: 7c900000 7c9b2000   ntdll.dll
AVRF: pressure.exe: pid 0x9F0: flags 0x80443027: application verifier enabled
ModLoad: 5ad10000 5ad59000   C:\WINNT\System32\verifier.dll
ModLoad: 10000000 1002b000   C:\WINNT\System32\vrfcore.dll
ModLoad: 00370000 003c8000   C:\WINNT\System32\vfbasics.dll
ModLoad: 7c800000 7c8f6000   C:\WINNT\system32\kernel32.dll
AVRF: verifier.dll provider initialized for pressure.exe with flags 0x80443027
ModLoad: 781d0000 78416000   C:\WINNT\WinSxS\x86_Microsoft.VC80.DebugMFC_1fc8b3b9a1e18e3b_8.0.50727.42_x-ww_c8452471\MFC80D.DLL
ModLoad: 10200000 10320000   C:\WINNT\WinSxS\x86_Microsoft.VC80.DebugCRT_1fc8b3b9a1e18e3b_8.0.50727.42_x-ww_f75eb16c\MSVCR80D.dll
ModLoad: 77c10000 77c68000   C:\WINNT\system32\msvcrt.dll
ModLoad: 77f10000 77f59000   C:\WINNT\system32\GDI32.dll
ModLoad: 7e410000 7e4a1000   C:\WINNT\system32\USER32.dll
ModLoad: 77f60000 77fd6000   C:\WINNT\system32\SHLWAPI.dll
ModLoad: 77dd0000 77e6b000   C:\WINNT\system32\ADVAPI32.dll
ModLoad: 77e70000 77f03000   C:\WINNT\system32\RPCRT4.dll
ModLoad: 77fe0000 77ff1000   C:\WINNT\system32\Secur32.dll
ModLoad: 77120000 771ab000   C:\WINNT\system32\OLEAUT32.dll
ModLoad: 774e0000 7761e000   C:\WINNT\system32\ole32.dll
ModLoad: 10480000 1057c000   C:\WINNT\WinSxS\x86_Microsoft.VC80.DebugCRT_1fc8b3b9a1e18e3b_8.0.50727.42_x-ww_f75eb16c\MSVCP80D.dll
(9f0.e68): Break instruction exception - code 80000003 (first chance)
eax=01456fec ebx=7ffd4000 ecx=00000005 edx=00000020 esi=0145afb0 edi=01456fec
eip=7c90120e esp=0012fb20 ebp=0012fc94 iopl=0         nv up ei pl nz na po nc
cs=001b  ss=0023  ds=0023  es=0023  fs=003b  gs=0000             efl=00000202
ntdll!DbgBreakPoint:
7c90120e cc              int     3
0:000> g
ModLoad: 76390000 763ad000   C:\WINNT\system32\IMM32.DLL
ModLoad: 5d360000 5d36e000   C:\WINNT\WinSxS\x86_Microsoft.VC80.MFCLOC_1fc8b3b9a1e18e3b_8.0.50727.4053_x-ww_0ccc058c\MFC80ENU.DLL
ModLoad: 7c9c0000 7d1d7000   C:\WINNT\system32\SHELL32.dll
ModLoad: 773d0000 774d3000   C:\WINNT\WinSxS\x86_Microsoft.Windows.Common-Controls_6595b64144ccf1df_6.0.2600.6028_x-ww_61e65202\comctl32.dll
ModLoad: 5d090000 5d12a000   C:\WINNT\system32\comctl32.dll
ModLoad: 5ad70000 5ada8000   C:\WINNT\system32\uxtheme.dll
ModLoad: 74720000 7476c000   C:\WINNT\system32\MSCTF.dll
ModLoad: 77c00000 77c08000   C:\WINNT\system32\version.dll
ModLoad: 755c0000 755ee000   C:\WINNT\system32\msctfime.ime
(9f0.e68): Access violation - code c0000005 (first chance)
First chance exceptions are reported before any exception handling.
This exception may be expected and handled.
eax=0000004e ebx=7ffd4000 ecx=00000000 edx=03060000 esi=0012f81c edi=0012f814
eip=102a3aa0 esp=0012f550 ebp=0012f79c iopl=0         nv up ei pl zr na pe nc
cs=001b  ss=0023  ds=0023  es=0023  fs=003b  gs=0000             efl=00010246
MSVCR80D!_input_l+0xa50:
102a3aa0 8802            mov     byte ptr [edx],al          ds:0023:03060000=??

Gracias de nuevo por la ayuda.

Laura
En línea

Eternal Idol
Kernel coder
Moderador
***
Desconectado Desconectado

Mensajes: 5.969


Israel nunca torturó niños, ni lo volverá a hacer.


Ver Perfil WWW
Re: compilando en debug modo
« Respuesta #5 en: 28 Septiembre 2011, 01:18 am »

MSVCR80D es la DLL de la Run Time Library de VC++ (version debug).

Con el comando kb ves la pila de llamadas. ¿Estara scanf en la misma?
En línea

La economía nunca ha sido libre: o la controla el Estado en beneficio del Pueblo o lo hacen los grandes consorcios en perjuicio de éste.
Juan Domingo Perón
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Uso del Debug del MS-DOS « 1 2 »
Scripting
Hendrix 12 10,737 Último mensaje 11 Diciembre 2006, 15:00 pm
por Hendrix
Poner una tarjeta Atheros en modo debug, sin country code
Materiales y equipos
Mario_wifi 0 3,601 Último mensaje 9 Diciembre 2010, 18:27 pm
por Mario_wifi
Configurar visual studios para ver el contenido de las variables en modo debug
Programación C/C++
milya777 9 12,982 Último mensaje 8 Abril 2011, 06:37 am
por milya777
Compilando?
Programación C/C++
Steven6 0 2,708 Último mensaje 25 Abril 2011, 04:35 am
por Steven6
No puedo entrar en modo debug con putty ni teraterm;no funciona teclado terminal « 1 2 3 »
Hardware
Hason 26 15,794 Último mensaje 23 Abril 2017, 08:24 am
por MCKSys Argentina
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines