Jason He's WebLog
Coding Patterns to Avoid In AddIn Pipeline Development
Why we need a new lifetime management model Managed code relies on Garbage Collection (GC) to manage...
Date: 04/28/2008
From C# to CLR Jitted Code - Call Delegate
How expensive is a delegate call vs a direct function call? The delegate call is actually pretty...
Date: 01/21/2008
From C# to CLR Jitted Code - ByVal and ByRef
I am trying to understand the difference between ByVal and ByRef objects. In below C# code we pass...
Date: 11/06/2007
MSIL Verification Notes - 11
Tired of creating one sample for one unverifiable scenario. Here is a laundry list for the other...
Date: 10/17/2007
MSIL Verification Notes - 10
Another one that taking ArgIterator is deemed unverifiable. This time is for making a Type...
Date: 10/17/2007
MSIL Verification Notes - 9
Tail call verification rules require that no managed pointers to be passed from caller to callee if...
Date: 10/17/2007
MSIL Verification Notes - 8
One more verification rule for ArgIterator. We cannot put it in an array. To avoid stack corruption,...
Date: 10/17/2007
MSIL Verification Notes - 7
Box operation can operate on ValueType but not all of them. Below example is trying to box...
Date: 10/16/2007
MSIL Verification Notes - 6
Recently I am running some DynamicMethod scenario. It seems very easy to Emit incorrect IL using...
Date: 10/16/2007
MSIL Verification Notes - 5
This is a short one. The arglist operation can only work when the method's signature indicates that...
Date: 10/01/2007
MSIL Verification Notes - 4
I thought I knew what is box and unbox. After reading the ECMA spec, I know that what I believed was...
Date: 09/26/2007
MSIL Verification Notes - 3
Below code tries to return a ByRef object which points on a stack location. CLR rule considers this...
Date: 09/25/2007
MSIL Verification Notes - 2
MSIL (or CIL) uses a stack based model. To make sure that Type-safe code to be secure, it can only...
Date: 09/24/2007
MSIL Verification Notes - 1
I am recently working on some IL verification related scenario. IL verification is critical for CLR...
Date: 09/21/2007
CLR AddIn Adapters
I posted a blog about AddIn Adapters here. There is a question. Can we have AddInAdapters inside...
Date: 06/28/2007
CLR AddIn - Building Data Adapters
I have one blog posted on our team site...
Date: 03/16/2007
CLR AddIn Model in Paint.Net – 11 (AddIn side data type adapter)
From the last blog post, we understand that we need new contract at the isolation boundary to route...
Date: 01/29/2007
CLR AddIn Model in Paint.Net – 10 (Data type contract)
If the reader is familiar with Paint.Net, you will notice that we cannot really write a functional...
Date: 01/24/2007
CLR AddIn Model in Paint.Net – 9 (LifetimeToken and LifetimeTokenHandle)
AddIn can be passed to multiple Hosts, or it can have multiple references for the same Host. How to...
Date: 01/18/2007
CLR AddIn team blog
Our CLR AddIn team has a blog site available on https://blogs.msdn.com/clraddins/ That will be a...
Date: 01/17/2007
CLR AddIn Model in Paint.Net – 8 (AddInController)
Managing the lifecycle of an AddIn is not trivial. AddIn may be in-process or out-of process, AddIns...
Date: 01/16/2007
CLR AddIn Model in Paint.Net – 7 (AddIn Activation)
In the AddIn discovery blog, we already knew that we could get a collection of AddInToken from...
Date: 01/15/2007
CLR AddIn Model in Paint.Net – 6 (AddInBase, AddIn and Deployment)
AddInView is an abstract class and AddIn should inherit from it. Here is the code for AddInView and...
Date: 01/12/2007
CLR AddIn Model in Paint.Net – 5 (IContract, ContractBase and AddInAdapter)
Once we load an AddIn in an AppDomain, we need to think about its lifetime management. There are...
Date: 01/10/2007
CLR AddIn Model in Paint.Net – 4 (Contract and HostAdapter)
We did not talk about anything about versioning. Versioning is a big challenge for Host and AddIn...
Date: 01/09/2007
CLR AddIn Model in Paint.Net – 3 (Host Side View)
Host Side View (HSV) is exactly what the name indicates. It is the view of an AddIn from Host’s...
Date: 01/08/2007
CLR AddIn Model in Paint.Net – 2 (AddIn discovery)
Paint.Net can host multiple AddIns. We can let the user pick which AddIn to use. To discover all the...
Date: 01/05/2007
CLR AddIn Model in Paint.Net – 1 (Introduction)
I am recently working on the AddIn model for the .Net Framework. There are many Hosts, AddIns, and...
Date: 01/04/2007
MUI and UICulture
My parents are going to stay with us this coming summer. Besides all the preparations for their...
Date: 03/22/2004