コード例 #1
0
        //TODO: symbol cookie invalid errors?
        public HeapTypeCache(DbgEngDebugger debugger)
        {
            var ntdll = debugger.GetNtdllModuleEffective();

            HeapSegment    = (DbgUdtTypeInfo)debugger.GetModuleTypeByName(ntdll, "_HEAP_SEGMENT");
            UcrDescriptor  = (DbgUdtTypeInfo)debugger.GetModuleTypeByName(ntdll, "_HEAP_UCR_DESCRIPTOR");
            UserDataHeader = (DbgUdtTypeInfo)debugger.GetModuleTypeByName(ntdll, "_HEAP_USERDATA_HEADER");
            foreach (var sym in debugger.FindSymbol_Enum(ntdll.Name + "!RtlpLFHKey"))
            {
                LfhKey = debugger.ReadMemAs <uint>(sym.Address);
            }
        }