I'm writing a CrashReport.dll that can be used by any exe, as long as the exe load it, it captures all exceptions, prompt user to report, restart the application, etc. I'm using the SetUnhandledExceptionFilter, but it's not working. Seems that the VS2008 CRT is always handling the crash, when there's a crash, it popups a dialog with "Microsoft Visual C++ Runtime Library", my exception callback is not called.
I googled a lot, articles say that the CRT registers a exception handler. But when I debug my exe with OllyDbg, set a break point at SetUnhandledExceptionFilter, I found it is called twice. the first is in CRTStartup, it's before main the second is in the main function, called by my code there's no more call to it, and I even set an API hook to SetUnhandledExceptionFilter to prevent further calling.
Any idea?
Thanks.