SymTagFuncDebugStart
및 SymTagFuncDebugEnd
에 대한 documentation은 IDiaSymbol::get_lexicalParent
을 호출하면 해당 기능을 나타내는 기호가 반환됨을 나타냅니다. 나는 의 get_symTag
메쏘드가 SymTagFunction
을 반환 할 것이므로 이것을 해석한다. 그러나이 작업을 수행하면 SymTagCompiland
이 반환되고 함수는 반환되지 않습니다. 그래서 설명서가 잘못 표시되지만 더 나쁜 것은 실제로 SymTagFuncDebugStart
과 SymTagFuncDebugEnd
을 포함하는 SymTagFunction
에 묶는 방법을 잘 모르겠습니다.DIA SDK FuncDebugStart/FuncDebugEnd의 부모 함수를 얻는 방법?
아는 사람 있습니까? 몇 가지 덤프를 사용하면 IEnumSymbols
을 통해 기호를 열거 할 때 SymTagFunction
바로 다음에 SymTagFuncDebugStart
및 SymTagFuncDebugEnd
이 항상 올 수 있습니다. 즉, IDiaSymbol::get_symIndexId
이 함수의 경우 n
을 반환하면 func 디버그 시작 및 func 디버그 끝의 경우 각각 n+1
및 n+2
을 반환합니다.
그러나 이것이 항상 사실인지는 확신 할 수 없으며, 이는 신뢰할 수없고 해킹 된 것처럼 보입니다.
누구든지 올바른 방법을 제안합니까?
나는 그것을 알아내는 것을 끝내었다. 나는이 질문을 내가 도착한 대답으로 업데이트했다. –