If I use the System.Windows.Forms.MessageBox class' show function to draw a message box, a window pops up. I would like to know where the actual code to draw this window is? Is it in some Win32 API or user32.dll etc.? Through reflector I am unable to see the definition of Show method.
Also, is .NET a wrapper around win32 api then? I know that when we compile .net code it generates IL which is converted to CPU specific instructions at run time and then our CPU executes those instructions. But I have a feeling that there is some common code in Windows OS that's responsible for drawing a window (or reading from text file etc.). All these languages like C++, F#, C#, Java etc. eventually call that code from within the framework. But the question how can I go about finding it and verify it?
For example: in MFC or Win32 whichever function we called to draw a window on the screen, MessageBox.Show also calls the same function but its abstracted from us?
Then on the other hand we can inter operate between two languages.
So I am little confused here. Also I am reading CLR via C# these days so my brain is in super excited state :-)