How to load CLR into process

Posted on

Problem :

I have some question which puzzled me for a long time.

  1. What is the relationship between CLR
    and one process created by OS?
  2. What steps the CLR is loaded when we double-click an “Console Application” or “Windows Forms Application”?
  3. I found two methods: _CorExeMain() and _CorBindToRuntimeEx(). What’s the role of them?

Solution :

Please see Hosting the Common Language Runtime, Loading the Common Language Runtime into a Process, _CorExeMain Function, CorBindToRuntimeEx Function.

I think the basic answer is, the CLR must run in a process (host). If you “double-click”, a process is created (initally purely unmanaged) then the CLR is loaded into the process (e.g. with CorBindToRuntimeEx).

Leave a Reply

Your email address will not be published. Required fields are marked *