I was asked in an interview as to how Windows OS differentiate between a regular EXE and a .NET EXE.
My reply was, when a .NET exe is build, the compiler puts some information into the header. The information is PE32 or PE32+. Windows verifies the header to determine if it needs to load MSCOREE.dll which loads the CLR and executes the EXE.
Is my answer correct?
While I agree with GregC in general there are times when this type of information is useful. But that is one tough question to be expected to answer in an interview (unless it’s for the CLR team 🙂
Web Pages and Blogs…
Books…