User exception handler in C (Developers)
> I'm not sure what all functions I can call from the handler, I would need
> just printf.
(f)printf requires a FILE object, which is at exception time possibly in use or not available.
use sprintf(), and your own logging to file, memory, or (windows) debug print monitor.
> I would also need to implement this mechanism in my windows kernel driver
> because it's annoying to let exception BSOD and restart whole computer. I
> don't know if kernel winapi have support of similar function to hook
> exception handler or would I have to do it in assembler.
most exceptions can be handled by
__try {...}
__except {...}
in userspace.
those that can't, often can't in the kernel. IMO the kernel/driver is supposed to check the arguments for correctness before executing on it.
AFAIK there is no 'catch all, log and ignore' method in Windows
Tom
Complete thread:
- User exception handler in C - RayeR, 24.07.2020, 13:15 (Developers)
- User exception handler in C - Japheth, 24.07.2020, 18:07
- User exception handler in C - Rugxulo, 24.07.2020, 18:39
- User exception handler in C - tkchia, 24.07.2020, 20:47
- User exception handler in C - RayeR, 30.07.2020, 13:18
- User exception handler in C - tom, 30.07.2020, 23:54
- User exception handler in C - RayeR, 01.08.2020, 02:13
- User exception handler in C - Laaca, 16.08.2020, 21:27
- User exception handler in C - Laaca, 16.08.2020, 22:38
- User exception handler in C - Rugxulo, 17.08.2020, 22:35
- User exception handler in C - marcov, 18.08.2020, 12:23
- User exception handler in C - Laaca, 18.08.2020, 20:15
- User exception handler in C - Rugxulo, 19.08.2020, 19:44
- User exception handler in C - Laaca, 19.08.2020, 21:50
- User exception handler in C - Rugxulo, 23.08.2020, 17:32
- User exception handler in C - Japheth, 23.08.2020, 20:36
- User exception handler in C - Rugxulo, 23.08.2020, 17:32
- User exception handler in C - Laaca, 19.08.2020, 21:50
- User exception handler in C - Rugxulo, 19.08.2020, 19:44
- User exception handler in C - Laaca, 18.08.2020, 20:15
- User exception handler in C - marcov, 18.08.2020, 12:23
- User exception handler in C - Rugxulo, 17.08.2020, 22:35
- User exception handler in C - Rugxulo, 17.08.2020, 22:26
- User exception handler in C - tkchia, 19.08.2020, 18:52
- User exception handler in C - marcov, 20.08.2020, 00:00
- User exception handler in C - Laaca, 20.08.2020, 15:31
- User exception handler in C - marcov, 20.08.2020, 00:00
- User exception handler in C - Laaca, 16.08.2020, 22:38
- User exception handler in C - Laaca, 16.08.2020, 21:27
- User exception handler in C - RayeR, 01.08.2020, 02:13
- User exception handler in C - tkchia, 31.07.2020, 19:36
- User exception handler in C - RayeR, 01.08.2020, 02:16
- User exception handler in C - tom, 30.07.2020, 23:54
- User exception handler in C - RayeR, 30.07.2020, 13:18
- User exception handler in C - Guti, 27.07.2020, 08:22