我创建了一个内存管理器,它分配了由两个页面保护的内存,并保护了PAGE_NOACCESS。 我在SEH块中调用一个使用此内存的函数,并捕获此块中发生的ACCESS_VIOLATION异常(如果有)。现在,在我的异常处理程序中,是否可以检索程序无权访问的地址?我知道你可以获得指向错误指令的指针,但是你必须实际解析程序集吗?
这是我知道违规是否是由我的保护内存引起的(我可以继续执行;这可能是预期的行为)或者是否是另一个(未知)地方,我可能不得不终止处理。 我考虑过使用PAGE_GUARD保护,这可以帮助我确定访问的内存可能来自我的保护内存,但不确定(即堆栈受到PAGE_GUARD afaik保护后的内存)。
任何帮助表示赞赏:)