The CIL Tools version 2.1 added a new library CilTools.Metadata, as well as some new features and bug fixes for existing projects.
вторник, 21 июля 2020 г.
CIL tools is a set of software to work with Common Intermediate Language in .NET. It's an expansion of previously released CilBytecodeParser library. Besides the bytecode analysis library, it now also contains CilTools.Runtime library to load CIL bytecode of methods in external process's CLR instance and CIL View windows application to visualize CIL code.
- Rename CilBytecodeParser to CilTools.BytecodeAnalysis
- Add dynamic method parsing support
- Add syntax API
- Rework CilInstruction with generics
- Change the behaviour of CilGraph.ToString method to include only signature instead of full method code
- Add CilGraph.ToText method to return full code
- Add CilGraph.PrintSignature to output signature into target TextWriter
- Fix bug that prevented correct decoding of TypeDef or TypeSpec tokens during signature parsing
- Fix possible null refs in signature parser
- Avoid first-chance ArgumentException when resolving tokens
- Fix bug in MetadataReader.ReadCompressed
- Fix ldflda/ldsflda instructions handling
суббота, 16 мая 2020 г.
- Fix null reference when trying to access active workbook
- Fix exceptions when trying to delete temp file
- Disable code that accesses Worksheet.ProtectContents in Excel 2016+
- Disable APIs that add, remove or rename worksheets and open files in Excel 2016+ due to UI freezes (DisplayStatusBar, DisplayFormulaBar properties - can't be set after Excel is initialized; DeleteSheet, AddSheet, SetSheetName, MoveSheet, NewEmptyWorkbook, OpenFile, AddChart methods now throw NotSupportedException)
- Fix SetActiveSheet and SaveIntoFile in Excel 2016+
- Add new properties InitialSheetCount and SourceFile that can be set only before Excel is initialized
- Add new method AddEmbeddedChart
WinForms Excel Library now works with Excel 2016, but with limited functionality:
- You cannot add or remove sheets after InitializeExcel is called, but you can set InitialSheetCount before initialization to control sheet count.
- You cannot open workbook files after InitializeExcel is called, but you can set SourceFile property before initialization to select workbook to open. If this property is empty string, control will be created with new empty workbook
- You cannot add charts to new sheets, but you can add charts embedded to existing sheet with AddEmbeddedChart method
- You cannot modify content of protected sheets (on older Excel versions library attempts to unprotect sheet)