Click here to Skip to main content
14,578,799 members

MSIL

Great Reads

by Steve Marsh
The classes in this project allow you to parse text expressions entered by a user and compile them to a .NET assembly. This assembly can be executed on the fly, or saved to a DLL.
by Jason R. Fruit
Implement a compiling calculator to learn about .NET CIL compilation
by Jonathan de Halleux, Nikolai Tillmann
Pex is a new tool that helps in understanding the behavior of .NET code, debugging issues, and in creating a test suite that covers all corner cases -- fully automatically.
by Dennis C. Dietrich
Clarifying how the .NET GC identifies objects to collect once and for all... hopefully...

Latest Articles

by Higty
Design mapping rule by test case and write IL code for good performance
by Alexandre Bencz
DotNetPELib is a library which abstracts managed information such as namespaces, classes, fields, methods, and instructions. The information can then be used to generate assembly language source files, or PE executables or DLLs.
by Alexandre Bencz
With this new OrangeC/C++ compiler back-end, you can compile your C code to .NET
by Alexandre Bencz
With this new OrangeC/C++ compiler back-end, you can compile your C code to .NET.

All Articles

Sort by Updated

MSIL 

2 Jan 2020
Alexandre Bencz
DotNetPELib is a library which abstracts managed information such as namespaces, classes, fields, methods, and instructions. The information can then be used to generate assembly language source files, or PE executables or DLLs.
17 Dec 2019
Alexandre Bencz
With this new OrangeC/C++ compiler back-end, you can compile your C code to .NET
14 Dec 2019
Alexandre Bencz
With this new OrangeC/C++ compiler back-end, you can compile your C code to .NET.
7 May 2019
Florian Rappl
Want to modernize your C# codebase? Let's continue with methods.
14 Sep 2018
wmjordan
Circumventing language obstacles and optimizing performance with Dynamic Methods, Dynamic Assemblies.
15 May 2018
Eric Lynch
Extends .NET reflection to decode the byte array returned by System.Reflection.MethodBody.GetILByteArray(), discusses the techniques to achieve this, and provides a brief primer on .NET reflection.
26 Jan 2018
Jason R. Fruit
Implement a compiling calculator to learn about .NET CIL compilation
14 Mar 2017
Vikas Sharma
In this article we will make a Visual Studio extension(Visual Studio VSIX Package) that would notify us for our emails in VisualStudio Status bar
10 Jul 2016
Florian Rappl
This article introduces MAGES - a very simple, yet powerful, expression parser and interpreter.
13 Jun 2016
john_1726
MVVM Silverlight Application with Entity Framework and WCF Service
11 Jan 2016
Den367
Using System.Windows.Media library to create embroidery design of a glyph from true type font file
16 Sep 2015
Ed Nutting
In this article I discuss the innovative approach, taken by FlingOS, to teaching OS and low-level development to high-level developers using C#.
1 Mar 2015
mbarbac
The seventh version of the dynamic, configuration-less and self-adaptive Kerosene ORM library, that provides full real support for POCO objects, natural SQL-like syntax from C#, and advanced capabilities while being extremely easy to use.
1 Mar 2015
mbarbac
A deep dive tutorial on Kerosene ORM Dynamic Records and other core concepts of the library
24 Nov 2014
Jeremy Falcon
A beginner's guide to talking like a computer.
7 Aug 2014
Jerry.Wang
Modify methods' IL codes on runtime even if they have been JIT-compiled, supports release mode / x64 & x86, and variants of .NET versions, from 2.0 to 4.5.
22 Jun 2014
Nathaniel Moschkin
Topics and methods on programming in .NET and performance considerations
3 Apr 2014
Kemeny Attila
Generate proxy class dynamically which implements interface
16 Dec 2013
Florian Rappl
A close look at some powerful features of C# that are less known but sometimes come in very handy
16 Oct 2013
tcassisi
Generating typed field accessors and applying them to object mapping and SQL Stored Procedures
30 Sep 2013
Florian Rosmann
COM Interop using a little post compiler. As a result, it is possible to use multithreading in combination with COM interfaces.
28 Aug 2013
Software Developer's Journal
The .NET platform contains no extensions which would allow for the use of advanced aspect oriented programming. But it does contain mechanisms which makes it possible to build components which provide similar functionality. We will find out how to achieve this in this article.
9 Aug 2013
Dennis C. Dietrich
Clarifying how the .NET GC identifies objects to collect once and for all... hopefully...
26 Apr 2013
Sebastien Lebreton
Reflexil is an assembly editor and runs as a plug-in for Reflector or JustDecompile. Reflexil is able to manipulate IL code and save the modified assemblies to disk. Reflexil also supports "on-the-fly" C#/VB.NET code injection.
11 Feb 2013
Sander Rossel
Journey to the center of the .NET Framework with a chance of IL along the way!
27 Sep 2012
Mattias Högström
Runtime IL-Rewriting can be used to add behavior such as logging to applications, or redirect calls from one API to another. This article and accompanying source code explains how to substitute a method call at runtime.
21 Sep 2012
icemanind
A program to compile C# code into MSIL code
31 May 2012
rcarlson-cayen, Cayen Systems
This article details how to make a legacy code base more maintainable by utilizing a JSON architecture.
2 Nov 2011
Rene Pally
Advanced .NET Debugging Extracting Information from Memory
16 Aug 2011
Reto Ravasio
A WPF app that uses dynamic types and databinding for displaying MSI files.
4 Jul 2011
Chad Z. Hower aka Kudzu
Several users have written to me requesting information on the new Cosmos X86 assembly level debugger. Because of the great interest I have written this short preview article.
4 Jul 2011
Chad Z. Hower aka Kudzu
Introduction to writing plugs in Cosmos in C#, Assembly, or X#
1 Feb 2011
asheesh goja
A high performance binary serializer using Microsoft Common Intermediate Language
8 May 2010
Thiago de Arruda
Shows how to extend the proxy generated by this framework by using Reflection.Emit.
10 Aug 2009
Stefan Simek
RunSharp (or Run#) is a high-level wrapper around the Reflection.Emit API, allowing you to generate code at runtime quickly and easily.
9 Aug 2009
Buu Nguyen
Examine the implementation, API, and performance for Fasterflect, an alternative to the .NET Reflection API.
23 Jun 2009
Ziad Elmalki
Replace any method with another method at runtime. Updated for 3.5 SP1.
22 Feb 2009
Theraot
What Microsoft didn't want you to know
28 Jan 2009
Jonathan de Halleux, Nikolai Tillmann
Pex is a new tool that helps in understanding the behavior of .NET code, debugging issues, and in creating a test suite that covers all corner cases -- fully automatically.
10 Jan 2009
Adnan Aman
This is my very humble effort to reply Mr. Scott Henselman's Interview questions with great respect for him.
6 Jan 2009
Steve Marsh
The classes in this project allow you to parse text expressions entered by a user and compile them to a .NET assembly. This assembly can be executed on the fly, or saved to a DLL.
13 Nov 2008
Buu Nguyen
Discusses the new features of C# 4.0 including dynamic lookup, covariance/contravariance generics, named and optional paramters
31 Jul 2008
Anton Ponomarev
By following steps outlined in this article, you will be able to get Report Viewer to generate reports in Microsoft Word formats (DOC, RTF, WordprocessingML, and OOXML) when working in the local mode.
30 May 2008
Daniel Pistelli
An article about .NET internals and native compiling.
29 May 2008
Unknown Narrator
A GetOpt implementation for .NET.
14 May 2008
Daniel Pistelli
An article about .NET internals and code injection
4 May 2008
Sasha Goldshtein
In this article, we will look into JIT optimizations, with specific focus on inlining.
21 Feb 2008
Fady Anwar
An article demonstrating why you should not rely on obfuscation to protect your .NET applications.
27 Nov 2007
Philip Liebscher
An examination of dynamic object instantiation and runtime machines to boost performance.
28 Jun 2007
Sorin Serban
This article shows how to get a readable and programmable result from the IL array provided by the MethodBody.GetILAsByteArray() method.
26 Jun 2007
venom00
In this article, we'll talk about VB6-.NET interoperation without involving COM. How? Making C-like exports of some functions from a VB.NET DLL. First, I'll introduce the technique used with a very simple sample and then it will be explained how to set a global hook just using VB (6 and .NET).
16 Jun 2007
NineRays, Mark Sochan
Most .NET software projects can easily be tampered, exposing your software to security risks and theft of intellectual property. This article shows different techniques used to protect .NET code and determine the best protection for you. 9rays.Net offers you Spices.Obfuscator to these ends.
6 May 2007
Piyush S Bhatnagar
This article explains how Reflection.Emit classes can be used to dynamically generate .NET assemblies.
18 Apr 2007
Dave Curylo, MCAD
How to expose legacy or third party assemblies over WCF with simple modifications to the MSIL.
30 Mar 2007
GaryWoodfine
Analysis of the CIL generated by the .net compiler for 4 Languages in VS 2005
19 Feb 2007
ronnyek
Experimentation with Mono.Cecil, the IL Manipulation library
4 Dec 2006
Alexey A. Popov
This article is dedicated to the observable property design pattern, a very nice pattern used in the Microsoft .NET Framework, a possible memory leak problem with it, and gives a couple of ways to solve it.
1 Sep 2006
jconwell
This tool analyses the IL of a list of assemblies, looking for types, methods, and fields that are not used by another list of assemblies. This lets you see if you have unused legacy code lying around that should be cleaned up.
1 May 2006
jconwell
Part 2 of an introduction to creating dynamic types. This article shows how to actually generate the methods in a dynamic type and how to call them.
6 Mar 2006
jconwell
Introduction to creating dynamic types with Reflection.Emit.
3 Mar 2006
Peter Rilling
Implement support for broadcasting events to all ancestors in a control hierarchy for Win Forms applications.
14 Feb 2006
Johannes Hansen
Dynamically sorting a list by using dynamic methods and delegates.
10 Feb 2006
Chris Stefano
Generate loader classes for faster operation using Reflection.Emit
22 Dec 2005
Mainak Saha
An article on using the __cdecl callback from C#, changing compiler service.
29 Sep 2005
Simon McEnlly
Attach performance hooks to an assembly through a command line utility.
25 Aug 2005
Krishna Prasad V.R.
This article focuses on the problems you might face and the probable solution when using .NET custom assemblies. This article also gives in-depth details of modifying .NET assemblies for which you do not have the source code.
11 Jul 2005
Alessandro Febretti
This article describes a way to achieve fast late-bound invocation through the generation of custom MSIL code at runtime.
22 Jun 2005
ediazc
Describes how to generate a WebForm using reflection from a class.
18 Jun 2005
Simon McEnlly
An article on editing an assembly's manifest and some other IL attributes.
4 Apr 2005
Giancarlo Aguilera
A hack that enables C# 2.0 Iterators with .NET 1.1.
22 Mar 2005
James Nies
Reflecting on Properties is nice, but often it can be too slow. This article describes an alternative method for dynamic property access.
26 Feb 2005
Fatih KIHTIR
Modifying CAPICOM Runtime Callable Wrapper (RCW) generated by TlbImp.exe to enable CAPICOM to process digital signatures with UTF8/ASCII content (mostly signed by Java).
7 Feb 2005
Giancarlo Aguilera
A discussion of some differences between VB and C# MSIL code.
3 Sep 2004
Hugo Pais Batista
Avoid unnecessary variable declaration and redundant instructions. Analyzing and understanding the compiler and generated IL instructions in a simple example, saving your performance.
28 Aug 2004
Emilio Reale
Exporting methods for the .NET class inside VB6 or unmanaged C++.
18 Apr 2003
Sameers Javed
Start using IL Assembly Language to debug your code at low level and understand how .NET deals with your high level code
24 Oct 2002
Valer BOCAN
Microsoft Intermediate Language (MSIL) may be improved by adding a few new instructions
23 Jun 2002
Richard Birkby
Demonstrates the use of Windows Forms, GDI+ from CIL