Weaving refers to the process of injecting functionality into an existing program. This can be done conceptually at a number of levels:
In theory you could go one deeper and weave with an executable compiled to native instructions, but this would add a lot of complexity and I'm not aware of anything that does this.
IL Weaving is simlar to ByteCode Weaving. .Net compiles to an intermediate language which is run by the .NET clr. IL Weaving is basically analyzing and altering the intermediate language. Since it is done at that level it can be done for all .NET languages.
Might help if you Google MSIL Injection instead. This link is from PostSharp and it explains it well.
My company has recently bought a product called dynaTrace for performance diagnosis. It uses MSIL injection to instrument around methods. Basically it adds IL code before your method and after to time the method (I am sure there is a lot more to it than that).
And here is a fairly involved but good explanation of the process.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With