Что происходит, когда пользователь нажимает блок.NET (EXE)?

Полагайте, что у нас есть.NET приложение Winforms или Консольное приложение. Может любой говорить мне, что произойдет пошаговое до WinForm, или Консольное приложение запускается. Я хотел бы, знают внутренности - как то, как EXE будет общаться с Платформой, что является ролью CLR, что происходит в случае исключения при запуске applicaiton itself.etc...

17
задан Sathish 7 May 2010 в 11:48
поделиться

2 ответа

При двойном щелчке по сборке .net .exe:

  • PE-загрузчик Windows запускается
  • Если вы используете Windows> = Windows XP, он обнаружит, что исполняемый файл является управляемым исполняемым файлом, и будет перенаправьте его в .net, вызвав _CoreExeMain в mscoree.dll (_CoreDllMain, если вы дважды щелкнули управляемый .dll). Он может использовать файл конфигурации сборки, чтобы узнать, какую среду выполнения использовать.
  • Если вы работаете в Windows
  • Затем mscoree.dll инициализирует среду выполнения .net, в зависимости от глобальной конфигурации, файла конфигурации сборки и других факторов.
  • Затем, если это .exe, он JIT компилирует свой метод точки входа и начинает его выполнение.
13
ответ дан 30 November 2019 в 14:20
поделиться

Вам, вероятно, нужно что-то вроде: Microsoft .NET Internals

http://www.amazon.com/Microsoft-NET-Internals-Tom-Christian/dp/0735626758/ref=sr_1_1?ie=UTF8&s=books&qid=1273233479&sr=1-1

Или, поскольку он еще не выпущен: Essential .NET, Volume I: The Common Language Runtime

http://www.amazon.co.uk/Essential-NET-Microsoft-Development-Paperback/dp/0201734117

0
ответ дан 30 November 2019 в 14:20
поделиться