Mono.Cecil.Pdb.SymWriter.Close C# (CSharp) Method

Close() public method

public Close ( ) : void
return void
        public void Close()
        {
            m_writer.Close ();
            Marshal.ReleaseComObject (m_writer);

            foreach (var document in documents)
                Marshal.ReleaseComObject (document);
        }

Usage Example

Esempio n. 1
0
        void Patch()
        {
            // patch debug info in PE file to match PDB
            //try
            //{
            byte[] DebugInfo = m_writer.GetDebugInfo();
            m_writer.Close();

            RVA  debugHeaderRVA = m_module.Image.PEOptionalHeader.DataDirectories.Debug.VirtualAddress;
            long debugHeaderPos = m_module.Image.ResolveVirtualAddress(debugHeaderRVA);
            uint sizeUntilData  = 0x1c;    // copied from ImageWriter
            long debugDataPos   = debugHeaderPos + sizeUntilData;

            using (FileStream fs = new FileStream(m_assembly, FileMode.Open, FileAccess.Write))
            {
                BinaryWriter writer = new BinaryWriter(fs);
                writer.BaseStream.Position = debugDataPos;
                writer.Write(DebugInfo);
            }
            //  }
            //  catch (Exception ex)
            //  {
            //      System.Diagnostics.Debug.WriteLine("in PdbWriter.Patch: " + ex.Message);
            //  }
        }
All Usage Examples Of Mono.Cecil.Pdb.SymWriter::Close