We have a customer running our 100% .NET product on a W7 64 bit machine. The app explicitely targets x86 so runs in 32 bit mode. On the customer's machine we get random crashes in kernelbase.dll. Sometimes it crashes even by just moving the mouse over the app. On other W7, 64 bit machines it runs ok.
Any clues on how to approach this? Must be native code that is crashing but w开发者_如何学运维e have none in this app. So maybe a printerdriver that gets loaded into the process?
Any suggestions are welcomed, Regards, Bart
They might have some user input management software like hotkeys or hotbuttons. If there is a programmed hook to things like mouseover, etc, it could be performing an illegal operation on the app.
Run in a clean environment, and even check for malware. Run a W7 64bit in house and certify to your customer that it works in a clean environment and they must check their other applications.
The issue was a bug in the application that caused a stack overflow only when a user's desktop was set to 125% textsize. We do use a built-in crash recorder in our application (BugTrap http://www.codeproject.com/KB/applications/BugTrap.aspx) that usually works very good but stack overflows can't be trapped hence the lack of any usefull reports/dumps. Thanks for your support! Bart van Haaff
Huh. Is it WPF?
Because if it is, I would put my money squarely on a bad video card or video driver. I've had a lot of problems with nVidia's drivers on XP, to say the least...
It would probably help to know exactly what the crash is. Take a look at how to capture all .NET exceptions and how to capture all unmanaged crashing errors. You'll want to use the Windows symbols to debug the minidump you'll generate in your unhandled exception filters.
精彩评论