Question

I am attempting to debug a crash dump from my VB.NET code which is supposed to run 24-7 a Win7 machine which does not have a debugger. The target on all modules is 32-bit, so I don't know why it appears that it is attempting the 64-bit stuff.

It appears that it is trying to attach to a debugger and failing, so it aborts. I log into the machine and find that it has crashed again, so I make a crashdump.DMP file which stops on the following trace:

wow64.dll!Wow64NotifyDebugger()  + 0x1d bytes   
wow64.dll!HandleRaiseException()  + 0xee bytes  
wow64.dll!Wow64NtRaiseException()  + 0x88 bytes 
wow64.dll!whNtRaiseException()  + 0x15 bytes    
wow64.dll!Wow64SystemServiceEx()  + 0xd7 bytes  
wow64cpu.dll!TurboDispatchJumpAddressEnd()  + 0x2d bytes    
wow64.dll!RunCpuSimulation()  + 0xa bytes   
wow64.dll!Wow64LdrpInitialize()  + 0x429 bytes  
ntdll.dll!LdrpInitializeProcess()  + 0x1936 bytes   
ntdll.dll!string "Enabling heap debug options\n"()  - 0x45fe9 bytes 
ntdll.dll!LdrInitializeThunk()  + 0xe bytes 

The same code does not crash at all when a debugger is attached remotely or locally.

Can anyone tell me what to look for? I have compiled the executable as a Debug x86 build so I can attach a debugger at will and view the Debug.Writeline() call output.

Was it helpful?

Solution

On a 64 bit system, '32 bit windows' runs on an emulation layer, called wow64 (which you see) which translates the calls from 32 bits to 64 bits. So that's normal.

I did not fully understand from your question though: is the crash unexpected/somehow caused by a debugger?

OTHER TIPS

This is perfectly normal. "WOW64" is the name for the 32-bit on 64-bit compatibility system in Windows, and is involved when you run 32-bit code on a 64-bit Windows system.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top