示例#1
0
        private KoiHeap CreateHeap()
        {
            if (this.settings.ExportDbgInfo)
            {
                this.dbgWriter = new DbgWriter();
            }

            var heap = new KoiHeap();

            foreach (IKoiChunk chunk in this.finalChunks)
            {
                heap.AddChunk(chunk.GetData());
            }
            if (this.dbgWriter != null)
            {
                using (DbgWriter.DbgSerializer serializer = this.dbgWriter.GetSerializer())
                {
                    foreach (IKoiChunk chunk in this.finalChunks)
                    {
                        serializer.WriteBlock(chunk as BasicBlockChunk);
                    }
                }
            }
            return(heap);
        }
示例#2
0
        private KoiHeap CreateHeap()
        {
            if (settings.ExportDbgInfo)
            {
                dbgWriter = new DbgWriter();
            }

            var heap = new KoiHeap();

            foreach (var chunk in finalChunks)
            {
                heap.AddChunk(chunk.GetData());
            }
            if (dbgWriter != null)
            {
                using (var serializer = dbgWriter.GetSerializer())
                {
                    foreach (var chunk in finalChunks)
                    {
                        serializer.WriteBlock(chunk as BasicBlockChunk);
                    }
                }
            }
            return(heap);
        }
示例#3
0
            internal DbgSerializer(DbgWriter dbg)
            {
                this.dbg = dbg;
                stream   = new MemoryStream();
                var aes = new AesManaged();

                aes.IV = aes.Key = Convert.FromBase64String("UkVwAyrARLAy4GmQLL860w==");
                writer = new BinaryWriter(
                    new DeflateStream(
                        new CryptoStream(stream, aes.CreateEncryptor(), CryptoStreamMode.Write),
                        CompressionMode.Compress
                        )
                    );

                InitStream();
            }