Exemple #1
0
        /// <summary>
        /// </summary>
        /// <param name="peModuleSymbol">
        /// </param>
        /// <param name="peFieldSymbol">
        /// </param>
        /// <returns>
        /// </returns>
        private byte[] GetFieldBody(PEModuleSymbol peModuleSymbol, PEFieldSymbol peFieldSymbol)
        {
            var peModule = peModuleSymbol.Module;

            if (peFieldSymbol != null)
            {
                var field = peModule.MetadataReader.GetField(peFieldSymbol.Handle);
                return(GetFieldBody(field.GetRelativeVirtualAddress(), peModule.PEReaderOpt));
            }

            return(null);
        }
Exemple #2
0
 /// <summary>
 /// </summary>
 /// <param name="peModuleSymbol">
 /// </param>
 /// <param name="peMethodSymbol">
 /// </param>
 private void GetPEFieldSymbol(out PEModuleSymbol peModuleSymbol, out PEFieldSymbol peMethodSymbol)
 {
     peModuleSymbol = this.fieldDef.ContainingModule as PEModuleSymbol;
     peMethodSymbol = this.fieldDef as PEFieldSymbol ?? this.fieldDef.OriginalDefinition as PEFieldSymbol;
 }