Exemplo n.º 1
0
 internal static ScriptRef[] LoadIL(Stream stream)
 {
     using (StreamMarshaler streamMarshaler = new StreamMarshaler(stream))
     {
         CfgSerializedHeader cfgSerializedHeader = new CfgSerializedHeader();
         streamMarshaler.ReadStream(cfgSerializedHeader);
         return(LoadScriptRefs(streamMarshaler, cfgSerializedHeader));
     }
 }
Exemplo n.º 2
0
 internal static bool LoadIL(Stream stream, out byte[] assemblyContent, out byte[] assemblyDebugSymbols, out ScriptRef[] scripts)
 {
     assemblyContent = (assemblyDebugSymbols = null);
     scripts         = null;
     using (StreamMarshaler streamMarshaler = new StreamMarshaler(stream))
     {
         CfgSerializedHeader cfgSerializedHeader = new CfgSerializedHeader();
         streamMarshaler.ReadStream(cfgSerializedHeader);
         scripts = LoadScriptRefs(streamMarshaler, cfgSerializedHeader);
         if (scripts == null)
         {
             return(false);
         }
         if (cfgSerializedHeader.cIL == 0)
         {
             return(false);
         }
         assemblyContent      = Load <byte>(streamMarshaler, cfgSerializedHeader.pIL, cfgSerializedHeader.cIL);
         assemblyDebugSymbols = ((cfgSerializedHeader.cPDB > 0) ? Load <byte>(streamMarshaler, cfgSerializedHeader.pPDB, cfgSerializedHeader.cPDB) : null);
     }
     return(true);
 }