Пример #1
0
 public SubStream(
     Stream stream,
     long size,
     string readErrorMessage,
     string writeErrorMessage
     )
 {
     m_stream = stream.AssumeArgNotNull("stream");
     m_size = size.AssumeArgGte(0, "size");
     m_startPos = stream.Position;
     m_readMessage = readErrorMessage;
     m_writeMessage = writeErrorMessage;
 }
Пример #2
0
        public void Load(Stream s)
        {
            Reset();
            s.AssumeArgNotNull("s");

            try
            {
                VerifyPESignature(s);
                ParsePEHeader(s);
                ParseSectionMap(s);
                ParseClrHeader(s);
                ParseMetadaRoot(s);
                ParseStringHeap(s);
                ParseGuidHeap(s);
                ParseMetaDataTables(s);
            }
            catch
            {
                Reset();
                throw;
            }
        }