我正在尝试使用PE文件中的资源执行某些计算。为此,我按照以下步骤操作:
从标题
获取资源部分的RVAPEHeader.DataDirectory [IMAGE_DIRECTORY_ENTRY_RESOURCE] .VirtualAddress
将上述RVA转换为文件偏移
到达资源部分的开头并遍历资源树
到达树叶(实际资源)并进行计算。
当我处理具有有效资源部分的正确PE文件但上面的步骤工作正常但我无法处理以下情况:
遇到上述情况时,我的代码会因ACCESS_VIOLATION_EXCEPTIONS崩溃或产生不一致的结果。
我的问题是,除了检查NULL指针/值之外,当资源节标题和指针指向/包含垃圾时,如何处理上述情况。