Runtime: рдПрдХрд▓ exe рд╕реЗрд▓реНрдл рдХрдВрд╕реЛрд▓ рдРрдк рд╢рд╛рдорд┐рд▓ рд╣реИ

рдХреЛ рдирд┐рд░реНрдорд┐рдд 3 рдирд╡ре░ 2016  ┬╖  98рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ  ┬╖  рд╕реНрд░реЛрдд: dotnet/runtime

.Net рдХреЛрд░ рдореЗрдВ рдПрдХ рд╕реНрд╡-рдирд┐рд╣рд┐рдд рдХрдВрд╕реЛрд▓ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЛ рдкреНрд░рдХрд╛рд╢рд┐рдд рдХрд░рдирд╛, рдЬреИрд╕рд╛ рдХрд┐ рдпрд╣рд╛рдВ рд╡рд░реНрдгрд┐рдд рд╣реИ рдПрдХ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдореЗрдВ рдХрдИ рдлрд╛рдЗрд▓реЛрдВ рдХреЗ рд╕рд╛рде, рдпрд╣рд╛рдВ рддрдХ тАЛтАЛрдХрд┐ "рдЫреЛрдЯреЗ рдкреИрд░реЛрдВ" рдХреЗ рд╕рд╛рде рднреАред

рдХреНрдпрд╛ рд╕рднреА рдЖрд╢реНрд░рд┐рддреЛрдВ рдХреЛ рдмрдВрдбрд▓ рдХрд░рдирд╛ рд╕рдВрднрд╡ рд╣реИ рддрд╛рдХрд┐ рд╣рдореЗрдВ рдПрдХ рднреА рдирд┐рд╖реНрдкрд╛рджрди рдпреЛрдЧреНрдп рдорд┐рд▓ рдЬрд╛рдП? рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рд╡рд┐рдВрдбреЛрдЬ рдХреЛ рд▓рдХреНрд╖рд┐рдд рдХрд░рддреЗ рд╕рдордп рдПрдХ рдмрдбрд╝рд╛-рдИрд╢ myapp.exe ред

рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдореИрдВ ILMerge рдХреЗ рд▓рд┐рдП рдХреБрдЫ рдЗрд╕реА рддрд░рд╣ рдХреА рддрд▓рд╛рд╢ рдХрд░ рд░рд╣рд╛ рд╣реВрдВ, рд▓реЗрдХрд┐рди .net рдХреЛрд░ рдХреЗ рд▓рд┐рдПред рдХреНрдпрд╛ dotnet publish рдпрд╛ рдХреБрдЫ рдЕрдиреНрдп рдХрдорд╛рдВрдб рдкрд░ рдХреБрдЫ рд╡рд┐рдХрд▓реНрдк рдзреНрд╡рдЬ рджреНрд╡рд╛рд░рд╛ рд╕рдВрднрд╡ рд╣реИ? рдпрджрд┐ рдирд╣реАрдВ, рддреЛ рдХреГрдкрдпрд╛ рдПрдХ рд╕реБрд╡рд┐рдзрд╛ рдЕрдиреБрд░реЛрдз рдХреЗ рд░реВрдк рдореЗрдВ рд╡рд┐рдЪрд╛рд░ рдХрд░реЗрдВред рдзрдиреНрдпрд╡рд╛рджред

рд╕рдмрд╕реЗ рдЙрдкрдпреЛрдЧреА рдЯрд┐рдкреНрдкрдгреА

рдпрд╣ рд╕рд┐рд░реНрдл рднрдпрд╛рдирдХ рд╣реИ рдореБрдЭреЗ рдЖрд╢реНрдЪрд░реНрдп рд╣реИ рдХрд┐ рдпрд╣ рдбрд┐рдЬрд╛рдЗрди рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЗ рджреМрд░рд╛рди рдХреНрдпреЛрдВ рдЕрдиреБрдореЛрджрд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛, рдЕрдкрдиреЗ рдЖрд╡реЗрджрди рдХреЛ рдЕрдкрдиреЗ рдПрдХ рдЧреНрд░рд╛рд╣рдХ рдХреЛ рд╡рд┐рддрд░рд┐рдд рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рдлрд┐рд░ рдЙрд╕реЗ рд╢реБрднрдХрд╛рдордирд╛рдПрдВ рдХрд┐ рдХреНрдпрд╛ рдЦреЛрд▓рдирд╛ рд╣реИ:
image

рдпрд╣ рд╕рд┐рд░реНрдл рдмрджрд╕реВрд░рдд рдФрд░ рдПрдХ рдкреВрд░реА рдЧрдбрд╝рдмрдбрд╝ рд╣реИ

рд░рдирдЯрд╛рдЗрдо /
MyProgram.exe
MyLib.dll

рдпрд╣ рдПрдХ рдмреЗрд╣рддрд░ рд╡рд┐рдЪрд╛рд░ рд╣реИ

рдпрд╣рд╛рдВ рддрдХ тАЛтАЛрдХрд┐ рдЬрд╛рд╡рд╛ рдмреЗрд╣рддрд░ рд╣реИ рдХрд┐ рд╕рдВрднрд╛рд▓:
explorer_2018-04-21_16-42-33

рд╕рднреА 98 рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

рдпрд╣ рдкрд░рд┐рджреГрд╢реНрдп рдЕрднреА рд╕рдорд░реНрдерд┐рдд рдирд╣реАрдВ рд╣реИред рдХрд╛рдо рдХреЗ рд▓рд┐рдП https://github.com/dotnet/corert рд░реЗрдкреЛ рдкрд░ рдирдЬрд╝рд░ рд░рдЦреЗрдВ, рдЬреЛ рдЗрд╕ рдорд╛рд░реНрдЧ рдХрд╛ рдиреЗрддреГрддреНрд╡ рдХрд░реЗрдЧрд╛ред

CoreRT рдЗрд╕ рд╕рдорд╛рдзрд╛рди рдХреА рдЦреЛрдЬ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рд╣реА рдЬрдЧрд╣ рд╣реИред

рдзрдиреНрдпрд╡рд╛рджред рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ CoreRT рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рд╡рд╣реА рд╣реИ рдЬреЛ рдореИрдВ рджреЗрдЦ рд░рд╣рд╛ рдерд╛ред

рджреВрд╕рд░реЛрдВ рдХреЗ рд▓рд┐рдП рдЬреЛ рдЗрд╕ рдкрд░ рдареЛрдХрд░ рдЦрд╛ рд╕рдХрддреЗ рд╣реИрдВ, рдпрд╣рд╛рдВ рдкрдврд╝реЗрдВ

рдореИрдВ рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рд╕рдордп рд╕рдВрдХрд▓рди рдХреЗ рдмрд┐рдирд╛ рдЗрд╕ рд╕реБрд╡рд┐рдзрд╛

.NET рдлреНрд░реЗрдорд╡рд░реНрдХ "рдзреЛрдЦрд╛" рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдЖрдкрдХреЗ рдкрд╛рд╕ рдУрдПрд╕ рдореЗрдВ рдкрд╣рд▓реЗ рд╕реЗ рдореМрдЬреВрдж рдмрд╣реБрдд рд╕рд╛рд░реА рдлрд╛рдЗрд▓реЗрдВ рд╣реИрдВред
рдпрджрд┐ рдЖрдк рдЪрд╛рд╣рддреЗ рд╣реИрдВ рддреЛ рдорд╢реАрди-рд╡рд╛рдЗрдб рд╕рд╛рдЭрд╛ .NET рдХреЛрд░ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдХреЗ рдЖрдк .NET рдХреЛрд░ рдХреЗ рд╕рд╛рде рд╣реА рдЗрд╕реЗ рдкреНрд░рд╛рдкреНрдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

рдЕрдкрдиреА рд╕рднреА рдлрд╛рдЗрд▓реЛрдВ рдХреЛ рдПрдХ рдореЗрдВ рдорд┐рд▓рд╛рдиреЗ рдХреЗ рд▓рд┐рдП CoreCLR рдХреЛ рд░рд┐рдлрд▓реИрдХреНрдЯ рдХрд░рдирд╛ (inclред Native + рдкреНрд░рдмрдВрдзрд┐рдд) рдЧреИрд░-рддреБрдЪреНрдЫ рдХрд╛рдо рд╣реИ рдФрд░ рдореБрдЭреЗ рдирд╣реАрдВ рд▓рдЧрддрд╛ рдХрд┐ рдпрд╣ рдкрд░рд┐рджреГрд╢реНрдп рдмрд╣реБрдд рдЕрдзрд┐рдХ рдЧреНрд░рд╛рд╣рдХреЛрдВ рдХреЗ рд▓рд┐рдП рджрд┐рд▓рдЪрд╕реНрдк рд╣реИред

рдЕрдВрддрд░ рдпрд╣ рд╣реИ рдХрд┐ рдкреНрд░рддреНрдпреЗрдХ рд╡рд┐рдВрдбреЛрдЬ рдорд╢реАрди рдореЗрдВ .NET рдлреНрд░реЗрдорд╡рд░реНрдХ рдХреА рдЧрд╛рд░рдВрдЯреА рд╣реИ, рд▓реЗрдХрд┐рди .NET рдХреЛрд░ рдирд╣реАрдВ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдЬрдм рддрдХ рдХрд┐ рдПрдХ рд╡рд┐рд╢реЗрд╖ рдХрд╛рд░рдг рдирд╣реАрдВ рд╣реИ рдХрд┐ рддреИрдирд╛рддреА рдХреЛ рдФрд░ рдЕрдзрд┐рдХ рдЬрдЯрд┐рд▓ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд╛рдпрдХ рд╣реИ, рддреЛ рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдореИрдВ рд╡рд╣рд╛рдВ рд░рд╣реВрдВрдЧрд╛ред
рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЧреНрд░рд╛рд╣рдХ рдЖрдорддреМрд░ рдкрд░ рдПрдХрд▓ exe рдЙрдкрдпреЛрдЧрд┐рддрд╛рдУрдВ рдХреЛ рдирд╣реАрдВ рд▓рд┐рдЦрддреЗ рд╣реИрдВред рд╢рд╛рдпрдж рдПрдХ рджрд┐рдиред :-)

рдЬрдм рддрдХ рдХрд┐ рдПрдХ рд╡рд┐рд╢реЗрд╖ рдХрд╛рд░рдг рдирд╣реАрдВ рд╣реИ рдХрд┐ рддреИрдирд╛рддреА рдХреЛ рдФрд░ рдЕрдзрд┐рдХ рдЬрдЯрд┐рд▓ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд╛рдпрдХ рд╣реИ

.NET рдлреНрд░реЗрдорд╡рд░реНрдХ .NET .NET рдкрд░ рдкрд╕рдВрдж рдХрд░рдиреЗ рдХреЗ рдХрдИ рдХрд╛рд░рдг рд╣реИрдВред рдкреНрд░рджрд░реНрд╢рди, рдкреНрд░рддрд┐рд░реВрдкрдХрддрд╛, рд╕реЗрд╡рд╛рдХреНрд╖рдорддрд╛, рдЕрд▓рдЧрд╛рд╡ рдЗрддреНрдпрд╛рджрд┐ред рдФрд░ рдпрд╣ рдХреНрд░реЙрд╕-рдкреНрд▓реЗрдЯрдлреЙрд░реНрдо-рдиреЗрд╕ рдХреА рдЕрдирджреЗрдЦреА рдХрд░ рд░рд╣рд╛ рд╣реИред

рдПрдХ рдПрдХрд▓ exe рдЙрдкрдпреЛрдЧрд┐рддрд╛ рд╣реЛрдиреЗ рдХреЗ рдирд╛рддреЗ рдЬреНрдпрд╛рджрд╛рддрд░ рдПрдХ рдХреЙрд╕реНрдореЗрдЯрд┐рдХ рдЪрд┐рдВрддрд╛ рд╣реИред рдЗрд╕рдореЗрдВ рдХреЛрдИ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдХрд╛рд░реНрдпрд╛рддреНрдордХ рдЕрдВрддрд░ рдирд╣реАрдВ рд╣реИ (рдпрджрд┐ рдХрд┐рд╕реА рдХреЛ рднреА рд╢рд╛рдорд┐рд▓ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ) рдпрджрд┐ рдирд┐рд╖реНрдкрд╛рджрди рдпреЛрдЧреНрдп рдПрдХ рдлрд╝рд╛рдЗрд▓ рдпрд╛ рдПрдХ рдлрд╝реЛрд▓реНрдбрд░ рд╣реИ рдЬрд┐рд╕рдореЗрдВ рдореБрдЯреНрдареА рднрд░ рдлрд╛рдЗрд▓реЗрдВ рд╣реИрдВред

@ рдПрдореЗрд▓реАрдиреЛ рдУрд╣ рдореИрдВ рд╕рд╛рдорд╛рдиреНрдп рд░реВрдк рд╕реЗ рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдХреЗ рд▓рд┐рдП рд╕рд╣рдордд рд╣реВрдВ, рдпрд╣ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рд╕рдЪ рд╣реИред рдЫреЛрдЯреА рдЙрдкрдпреЛрдЧрд┐рддрд╛рдУрдВ рдореЗрдВ рдЬрд╣рд╛рдВ рдпрд╣ рдХреЙрд╕реНрдореЗрдЯрд┐рдХ рд╡рд╛рдВрдЫрдиреАрдп рд╣реИ, .NET рдлреНрд░реЗрдорд╡рд░реНрдХ рдиреЗ рдЗрд╕ рдкреНрд░рдХрд╛рд░ рдЕрдм рддрдХ рдХрд╛рдлреА рдЕрдЪреНрдЫрд╛ рдХрд╛рдо рдХрд┐рдпрд╛ рд╣реИред рдореИрдВ рдорд╛рдирддрд╛ рд╣реВрдВ рдХрд┐ рдпрд╣ рдПрдХ рд╕рднрд╛ рдХрдВрдкрдиреА рдФрд░ рдХреЙрдкреАрд░рд╛рдЗрдЯ рд╕рдВрджреЗрд╢ рдХреЛ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛрдиреЗ рдХреЗ рд░реВрдк рдореЗрдВ рдПрдХ рд╣реА рдЕрд░реНрде рдореЗрдВ рдХреЙрд╕реНрдореЗрдЯрд┐рдХ рд╣реИред рд▓реЗрдХрд┐рди рдПрдХ рдХреЙрд╕реНрдореЗрдЯрд┐рдХ рдЪреАрдЬ рд╣реЛрдиреЗ рдХреЗ рдирд╛рддреЗ рдпрд╣ рдореБрдЭреЗ рдХрдо рдкрд╕рдВрдж рдирд╣реАрдВ рд╣реИред рдЬрд╛рд╣рд┐рд░ рд╣реИ рдХрд┐ рдпрд╣рд╛рдВ рдкреНрд░рд╛рдердорд┐рдХрддрд╛ рдирд╣реАрдВ рд╣реИ, рдпрд╣ рдХрд╛рдлреА рд╕рдордЭ рдореЗрдВ рдЖрддрд╛ рд╣реИред

рд╕рдВрднрд╡рддрдГ рд╕рдВрдмрдВрдзрд┐рдд: https://github.com/dotnet/core/issues/600

рдпрд╣ рдЬреНрдпрд╛рджрд╛рддрд░ рдХреЙрд╕реНрдореЗрдЯрд┐рдХ рдирд╣реАрдВ рд╣реИред рдХрд▓реНрдкрдирд╛ рдХреАрдЬрд┐рдП рдХрд┐ рдореИрдВ рдПрдХ рдРрд╕реЗ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЛ рд╡рд┐рддрд░рд┐рдд рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ рдЬрд┐рд╕рдореЗрдВ рдХрдИ рдШрдЯрдХ рдЕрдВрджрд░ рд╣реЛрдВ, рдЬреИрд╕реЗ Idsrv4 рдпрд╛ рд░реЗрд╡реЗрдирдбрдм + рдореЗрд░рд╛ рдЕрдкрдирд╛ рд╕рд╛рдорд╛рдиред рд╡реЗ рдПрд╕реНрдкрдиреЗрдЯ рдХреЛрд░ рдмрд┐рдЯреНрд╕ рдкрд░ рдирд┐рд░реНрднрд░рддрд╛ рд▓реЗрддреЗ рд╣реИрдВред рдпрд╣ рд╕рдм рдареАрдХ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ рдЬрдм рддрдХ рдХрд┐ рд╡реЗ рдПрд╕реНрдкрдиреЗрдЯ рдХреЛрд░ рдХреЗ рдПрдХ рд╣реА рд╕рдВрд╕реНрдХрд░рдг рдкрд░ рдирд┐рд░реНрднрд░ рдХрд░рддреЗ рд╣реИрдВред рдЬреИрд╕реЗ рд╣реА рдЙрдирдореЗрдВ рд╕реЗ рдПрдХ рдЕрдЧрд▓реЗ рд╕рдВрд╕реНрдХрд░рдг рдХреЗ рд▓рд┐рдП рдЖрдЧреЗ рдмрдврд╝рддрд╛ рд╣реИ рдпрд╣ рд╢рд╛рдпрдж рдЕрдм рдХрд╛рдо рдирд╣реАрдВ рдХрд░реЗрдЧрд╛ред рдпрджрд┐ OTOH рдореИрдВ рдкреНрд░рддреНрдпреЗрдХ рдШрдЯрдХ рдХреЛ рдПрдХ рдПрдХрд▓ рдореЗрдВ ilmerge рдХрд░ рд╕рдХрддрд╛ рд╣реИред рддреЛ рд╕рдорд╕реНрдпрд╛ рджреВрд░ рд╣реЛ рдЬрд╛рдПрдЧреАред

рдПрдХ рдмрд╛рдд рдХрд╛ рдзреНрдпрд╛рди рд░рдЦреЗрдВ рдХрд┐ рд╕рд┐рд░реНрдл ILMerge рдХреЗ рдХрд╛рдо рди рдХрд░рдиреЗ рд╕реЗ рдЬреНрдпрд╛рджрд╛ рддрдХрдиреАрдХреА рд╕рдорд╕реНрдпрд╛рдПрдВ рд╣реИрдВред рд░рдирдЯрд╛рдЗрдо рдореВрд▓ рд░реВрдк рд╕реЗ рдХрдИ рдлрд╛рдЗрд▓реЛрдВ рдореЗрдВ рд╡рд┐рднрд╛рдЬрд┐рдд рд╣реИ, рдФрд░ рд╕реАрдПрд▓рдЖрд░ рд╣реЛрд╕реНрдЯ, рд░рдирдЯрд╛рдЗрдо рдирд┐рд░реНрднрд░рддрд╛ рдкрд╛рда рдлрд╝рд╛рдЗрд▓, рдФрд░ рдЕрдзрд┐рдХ рдЬреИрд╕реА рд╕рд╣рд╛рдпрдХ рдлрд╛рдЗрд▓реЗрдВ рднреА рд╣реИрдВред рдПрдХ рдПрдХрд▓-рдлрд╝рд╛рдЗрд▓ рдирд┐рд╖реНрдкрд╛рджрди рдпреЛрдЧреНрдп рдПрдХрдорд╛рддреНрд░ рдХрд╛рд░рдг рдЕрддреАрдд рдореЗрдВ рдХрд╛рдо рдХрд┐рдпрд╛ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ .NET рдлреНрд░реЗрдорд╡рд░реНрдХ, рдПрдХ рд╡реИрд╢реНрд╡рд┐рдХ рд╕рд┐рд╕реНрдЯрдо-рд╡рд╛рдЗрдб рдЗрдВрд╕реНрдЯреЙрд▓реЗрд╢рди, рдкрд░ рднрд░реЛрд╕рд╛ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред рджреЛ рдкрд░рд┐рджреГрд╢реНрдпреЛрдВ рдХреА рддреБрд▓рдирд╛ рдХрд░рдирд╛ рдереЛрдбрд╝рд╛ рдЕрдиреБрдЪрд┐рдд рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ .NET рдлреНрд░реЗрдорд╡рд░реНрдХ рдореЗрдВ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ "рд╕реНрд╡-рдирд┐рд╣рд┐рдд" рд╡рд┐рдХрд▓реНрдк рдирд╣реАрдВ рд╣реИред

рдпрд╣ рд╕рдм рдареАрдХ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ рдЬрдм рддрдХ рдХрд┐ рд╡реЗ рдПрд╕реНрдкрдиреЗрдЯ рдХреЛрд░ рдХреЗ рдПрдХ рд╣реА рд╕рдВрд╕реНрдХрд░рдг рдкрд░ рдирд┐рд░реНрднрд░ рдХрд░рддреЗ рд╣реИрдВред рдЬреИрд╕реЗ рд╣реА рдЙрдирдореЗрдВ рд╕реЗ рдПрдХ рдЕрдЧрд▓реЗ рд╕рдВрд╕реНрдХрд░рдг рдХреЗ рд▓рд┐рдП рдЖрдЧреЗ рдмрдврд╝рддрд╛ рд╣реИ рдпрд╣ рд╢рд╛рдпрдж рдЕрдм рдХрд╛рдо рдирд╣реАрдВ рдХрд░реЗрдЧрд╛ред

рдпрд╣ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рд╕рдЪ рдирд╣реАрдВ рд╣реИред рдЖрдк рдЕрд▓рдЧ-рдЕрд▓рдЧ рд░рдирдЯрд╛рдЗрдо рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рдХреЗ рдЦрд┐рд▓рд╛рдл рдХрдИ рдЕрд▓рдЧ-рдЕрд▓рдЧ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдкреНрд░рдХрд╛рд╢рд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдлрд┐рд░ рдЙрдиреНрд╣реЗрдВ рдЙрд╕реА "uber-app" рдореЗрдВ рдмрдВрдбрд▓ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдЖрдк рдмрд╕ рдЙрдирдХреА рдирд┐рд░реНрднрд░рддрд╛ рдХреЛ рдПрдХ рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ рдирд╣реАрдВ рдорд┐рд▓рд╛ рд╕рдХрддреЗ рд╣реИрдВред рдпрд╣рд╛рдВ рддрдХ тАЛтАЛрдХрд┐ рдЕрдЧрд░ рдЖрдк рдврд╛рдВрдЪреЗ рдкрд░ рдирд┐рд░реНрднрд░ рдкреНрд░рдХрд╛рд╢рди рд╡рд┐рдХрд▓реНрдк рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рднреА рдЖрдк рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рдХреЛ рдорд┐рд▓рд╛ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдорд┐рд▓рд╛рди рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдореИрдВ рд╕рдордЭрддрд╛ рд╣реВрдВ рдХрд┐ рдпрд╣ рд╢рд╛рдмреНрджрд┐рдХ рд░реВрдк рд╕реЗ рдПрдХрд▓ рдлрд╝рд╛рдЗрд▓ рд╣реЛрдиреЗ рд╕реЗ рдХрдо рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рд╣реИ, рдФрд░ рдкреАрдИ рдореЗрдВ рдПрдХ рд╕рдВрд╕рд╛рдзрди рдХреЗ рд░реВрдк рдореЗрдВ рдПрдХ exe рдХреЛ рдПрдореНрдмреЗрдб рдХрд░рдиреЗ рдЬреИрд╕реА рдЪреАрдЬреЛрдВ рдХреЛ рд░реЛрдХ рд╕рдХрддрд╛ рд╣реИред рдореБрдЭреЗ рдпрдХреАрди рдирд╣реАрдВ рд╣реИ рдХрд┐ рдЕрдЧрд░ рдЖрдк рдЗрд╕рдХрд╛ рдЬрд┐рдХреНрд░ рдХрд░ рд░рд╣реЗ рд╣реИрдВ, рд╣рд╛рд▓рд╛рдВрдХрд┐, рддрдм рднреА рдЖрдкрдХреЛ рд╢рд╛рдпрдж рдЗрд╕реЗ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдлрд╝рд╛рдЗрд▓ рдирд┐рдХрд╛рд▓рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреА, рдЬрд┐рд╕реЗ рдЖрдк рдЕрднреА рднреА рдПрдХ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдХреЗ рд╕рд╛рде рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

рдореЗрд░рд╛ рдорддрд▓рдм рд░рдирдЯрд╛рдЗрдо рд╕рдВрд╕реНрдХрд░рдг рдирд╣реАрдВ рдерд╛, рдореБрдЭреЗ рдкрддрд╛ рд╣реИ рдХрд┐ рдХрд╛рдо рдирд╣реАрдВ рдХрд░ рд░рд╣рд╛ рд╣реИред рдореЗрд░рд╛ рдХреНрдпрд╛ рдорддрд▓рдм рд╣реИ, рдореЗрд░реЗ рдкрд░рд┐рджреГрд╢реНрдп рдореЗрдВ рдХреНрдпрд╛ рд╣реЛрддрд╛ рд╣реИ рдЬрдм рдкреНрд░рддреНрдпреЗрдХ рдШрдЯрдХ [email protected] рдкрд░ рдирд┐рд░реНрднрд░рддрд╛ рд▓реЗрддрд╛ рд╣реИ [email protected] рдХреЛ рдЕрдкрдбреЗрдЯ

рд╕рд╛рде рд╣реА @thefringeninja рдкреНрд░рд╛рд╕рдВрдЧрд┐рдХ рдмрд┐рдВрджреБ, рдореИрдВ рд╕реБрдЭрд╛рд╡ рдУрдкреЗрдб рдХреЛ рдХрдо рдХрд░рддреА рд╣реИред рдпрд╣ рдПрдХ рддреИрдирд╛рддреА рдХреЗ рд╕рд╛рде рдХреБрдЫ рдЧрд▓рдд рд╣реЛрдиреЗ рдХреА рд╕рдВрднрд╛рд╡рдирд╛ рдХреЛ рдХрдо рдХрд░рддрд╛ рд╣реИ, рдЖрдкрдиреЗ рдЬреЛ рднреА рднреЗрдЬрд╛ рд╣реИ рдЙрд╕рдХреА рд╕рдВрдЬреНрдЮрд╛рдирд╛рддреНрдордХ рд╕рд░рд╛рд╣рдирд╛ рдХреЗ рдмреЛрдЭ рдХреЛ рдХрдо рдХрд░рддрд╛ рд╣реИ рдФрд░ рдСрдкреНрд╕ рдЯреВрд▓реАрдВрдЧ рдХреЗ рд▓рд┐рдП рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХреЛ рдХрдо рдХрд░рддрд╛ рд╣реИ рдпрд╣ рд╕реНрдХреНрд░рд┐рдкреНрдЯрд┐рдВрдЧ, рдпрд╛ рд╡рд╛рдВрдЫрд┐рдд рд╕реНрдерд┐рддрд┐ред

рдореИрдВ dotnet рдХреА рд╕рд░рд╛рд╣рдирд╛ рдХрд░рддрд╛ рд╣реВрдВ

рдПрдХ рдбреЗрд╡рд▓рдкрд░ рдХреЗ рд░реВрдк рдореЗрдВ, рдореИрдВ ILMerge рдХреЛ рдХреЛрд░ рдореЗрдВ рд╡рд╛рдкрд╕ рд░рдЦрдиреЗ рдХреА рд╕рд░рд╛рд╣рдирд╛ рдХрд░рддрд╛ рд╣реВрдВред ЁЯСН

Dotnet.exe рдПрдХ рдПрдХрд▓ рдлрд╝рд╛рдЗрд▓ рд╣реИред NuGet.exe рдПрдХ рдПрдХрд▓ рдлрд╝рд╛рдЗрд▓ рд╣реИред рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╕реМрдВрджрд░реНрдп рдкреНрд░рд╕рд╛рдзрди рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реИрдВ, рдФрд░ рдПрдХ рдПрдХрд▓ рдлрд╝рд╛рдЗрд▓ рдЗрд╕ рддрд░рд╣ рд╕реЗ рд╕рд╛рджрдЧреА рджрд┐рдЦрд╛рддреА рд╣реИ, рдЬрд┐рд╕рдореЗрдВ 100 рдлрд╝рд╛рдЗрд▓реЛрдВ рд╡рд╛рд▓рд╛ рдлрд╝реЛрд▓реНрдбрд░ рдирд╣реАрдВ рд╣реЛрддрд╛ рд╣реИ! рдбреЙрдЯрдиреЗрдЯрдХреЛрд░ рдХреЗ рд╕рд╛рде рдЗрд╕реЗ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХрд╛ рддрд░реАрдХрд╛ рдЦреЛрдЬрдиреЗ рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рдЕрдЪреНрдЫрд╛ рд╣реЛрдЧрд╛

рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рд╕рдВрднрд╡ рдерд╛, рдФрд░ рдХрдИ рд╣рдлреНрддреЛрдВ рдХреЗ рдХрд╛рдо рдХреЗ рдмрд╛рдж, рд╕реАрдПрд▓рдЖрдИ рдХрдВрд╕реЛрд▓ рдЯреВрд▓ рдХреЛ рдПрдХ рдПрдХрд▓ .exe рдореЗрдВ рдкреНрд░рдХрд╛рд╢рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрдпрд╛ рдерд╛ ... рдЙрдореНрдо рдХреЛ рдЗрд╕ рд╕рдордп рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдореИрдВ рд╕рд┐рд░реНрдл рдПрдХ * .exe рдкреНрд░рд╛рдкреНрдд рдирд╣реАрдВ рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВред
рдореИрдВрдиреЗ рд╕реЛрдЪрд╛ рдерд╛ рдХрд┐ рдЖрддреНрдо рдирд┐рд╣рд┐рдд рдХреЛрд░ рдХреНрд╖реБрдзрд╛ рдХреА рдмрд╛рдд рдереА?

@PRIMETSS

рдореИрдВрдиреЗ рд╕реЛрдЪрд╛ рдерд╛ рдХрд┐ рдЖрддреНрдо рдирд┐рд╣рд┐рдд рдХреЛрд░ рдХреНрд╖реБрдзрд╛ рдХреА рдмрд╛рдд рдереА?

рд╕реНрд╡-рдирд┐рд╣рд┐рдд рдРрдкреНрд╕ рдХреА рдмрд╛рдд рдпрд╣ рд╣реИ рдХрд┐ рд╡реЗ рд╕реНрд╡-рдирд┐рд╣рд┐рдд рд╣реИрдВ, рдЕрд░реНрдерд╛рдд, рдЙрдиреНрд╣реЗрдВ .Net рдХреЛрд░ рдХреЛ рд▓рдХреНрд╖реНрдп рдорд╢реАрди рдкрд░ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдРрдк рдореЗрдВ рд╣реА рд╡рд╣ рд╕рдм рдХреБрдЫ рд╣реИ, рдЬрд┐рд╕реЗ рдЙрд╕реЗ рдЪрд▓рд╛рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред

рдЗрд╕ рддрд░рд╣ рдХреЗ рдРрдк рдХреЛ рддреИрдирд╛рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреА рдПрдХ рдкреВрд░реА рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдХреЛ рдХреЙрдкреА рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред рд╕рд┐рд░реНрдл рдПрдХ рдлрд╝рд╛рдЗрд▓ рд╣реЛрдиреЗ рд╕реЗ рддреИрдирд╛рддреА рдЖрд╕рд╛рди рд╣реЛ рдЬрд╛рдПрдЧреА, рд▓реЗрдХрд┐рди рдпрд╣ рд╣реИ, рдпрд╣ рдЕрднреА рднреА рдПрдХ рд╕реНрд╡-рдирд┐рд╣рд┐рдд рдРрдк рд╣реИ рдЙрд╕рдХреЗ рдмрд┐рдирд╛ рднреАред

рдмрдбрд╝реЗ рдФрд░ рд╕реЗрд╡рд╛ рдЬреИрд╕реЗ рдРрдк рдХреЗ рд▓рд┐рдП рдпрд╣ рд╢рд╛рдпрдж рдЙрддрдирд╛ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдирд╣реАрдВ рд╣реИ, рд▓реЗрдХрд┐рди рдХрдорд╛рдВрдб-рд▓рд╛рдЗрди рдЯреВрд▓ рдФрд░ рдЫреЛрдЯреЗ рдРрдк рдХреЗ рд▓рд┐рдП рдпрд╣ рдЬрд┐рддрдирд╛ рд╕рдВрднрд╡ рд╣реЛ рдЙрддрдирд╛ рд╕рд░рд▓ рдФрд░ COPY- рдкрд░рд┐рдирд┐рдпреЛрдЬрди рдХреЗ рдЕрдиреБрдХреВрд▓ рд╣реЛрдирд╛ рдЖрд╡рд╢реНрдпрдХ рд╣реИред

рдореИрдВ рдирд┐рдпрдорд┐рдд рд░реВрдк рд╕реЗ .NET рдореЗрдВ рдХрдорд╛рдВрдб рд▓рд╛рдЗрди рдЯреВрд▓ рд▓рд┐рдЦрддрд╛ рд╣реВрдВ рдФрд░ рдЙрдиреНрд╣реЗрдВ 1 EXE рдЕрдкрдЧреНрд░реЗрдб / рддреИрдирд╛рддреА / рдкреИрдХреЗрдЬрд┐рдВрдЧ WAY рд╕рд░рд▓ рдмрдирд╛рддрд╛ рд╣реИред рдореИрдВ рд╣рдореЗрд╢рд╛ EXE рдХреЗ рдЕрдВрджрд░ рд╕рднреА .config рдФрд░ рдЕрдиреНрдп рдЖрд╡рд╢реНрдпрдХ рдлрд╛рдЗрд▓реЛрдВ рдХреЛ рдкреИрдХ рдХрд░рддрд╛ рд╣реВрдВред

рдЙрд╕ рдПрдХрд▓-EXE рдХреЛ рдПрдХ рдорд┐рдиреА-рдХрдВрдЯреЗрдирд░ рдХреЗ рд░реВрдк рдореЗрдВ рд╕реЛрдЪреЗрдВред рдХрдВрдЯреЗрдирд░ рдЖрдзрд╛рд░рд┐рдд рддреИрдирд╛рддреА рдХреЗ рд▓рдЧрднрдЧ рд╕рднреА рд▓рд╛рдн рдпрд╣рд╛рдВ рд▓рд╛рдЧреВ рд╣реЛрддреЗ рд╣реИрдВред

рдпрд╣ рд╕рд┐рд░реНрдл рднрдпрд╛рдирдХ рд╣реИ рдореБрдЭреЗ рдЖрд╢реНрдЪрд░реНрдп рд╣реИ рдХрд┐ рдпрд╣ рдбрд┐рдЬрд╛рдЗрди рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЗ рджреМрд░рд╛рди рдХреНрдпреЛрдВ рдЕрдиреБрдореЛрджрд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛, рдЕрдкрдиреЗ рдЖрд╡реЗрджрди рдХреЛ рдЕрдкрдиреЗ рдПрдХ рдЧреНрд░рд╛рд╣рдХ рдХреЛ рд╡рд┐рддрд░рд┐рдд рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рдлрд┐рд░ рдЙрд╕реЗ рд╢реБрднрдХрд╛рдордирд╛рдПрдВ рдХрд┐ рдХреНрдпрд╛ рдЦреЛрд▓рдирд╛ рд╣реИ:
image

рдпрд╣ рд╕рд┐рд░реНрдл рдмрджрд╕реВрд░рдд рдФрд░ рдПрдХ рдкреВрд░реА рдЧрдбрд╝рдмрдбрд╝ рд╣реИ

рд░рдирдЯрд╛рдЗрдо /
MyProgram.exe
MyLib.dll

рдпрд╣ рдПрдХ рдмреЗрд╣рддрд░ рд╡рд┐рдЪрд╛рд░ рд╣реИ

рдпрд╣рд╛рдВ рддрдХ тАЛтАЛрдХрд┐ рдЬрд╛рд╡рд╛ рдмреЗрд╣рддрд░ рд╣реИ рдХрд┐ рд╕рдВрднрд╛рд▓:
explorer_2018-04-21_16-42-33

рд╣рд╛рдБ, рдореИрдВ рдЙрд╕реА рддрд░реНрдЬ рдкрд░ рд╕реЛрдЪ рд░рд╣рд╛ рдерд╛, рдХреНрдпреЛрдВрдХрд┐ рд╕реНрд╡рдпрдВ рдирд┐рд╣рд┐рдд рдХреНрд╖реБрдзрд╛ рдХреЗ рд╕рд╛рде рд░рдирдЯрд╛рдЗрдо рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рдЗрд╕рдХреЗ рд╕рд╛рде рд╢рд╛рдорд┐рд▓ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ (рдЬрд╛рд╣рд┐рд░ рд╣реИ!) (рдФрд░ рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдЙрди рдХреЛ рдорд░реНрдЬ рдХрд░рдиреЗ рдХрд╛ рдПрдХ рддрд░реАрдХрд╛ рдирд╣реАрдВ рд╣реИ), рддреЛ рдореИрдВрдиреЗ рднреА рд╕реЛрдЪрд╛ рдХрд┐ рдмрд╕ рдПрдХ рдлрд╝реЛрд▓реНрдбрд░ рдЬреБрджрд╛рдИ рд╣реЛрдЧрд╛ред рдирд┐рдбрд░ рдмрдиреЛ, рдФрд░ рд╣рд╛рдБ рдореБрдЭреЗ рднреА рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд░рдирдЯрд╛рдЗрдо рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рдПрдХ рд░рдирдЯрд╛рдЗрдо рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП, рдЗрд╕рд▓рд┐рдП рдХреЛрдИ рднреА рдХреЛрд░ рдореЗрдВ рд▓рд┐рдЦреЗ рдЧрдП рдХрдорд╛рдВрдб рд▓рд╛рдЗрди рдЯреВрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░ рд░рд╣рд╛ рд╣реИ, рдХрдо рд╕реЗ рдХрдо рдЗрд╕реЗ рдереЛрдбрд╝рд╛ рдФрд░ рдЕрдзрд┐рдХ рд╕рд╣рдЬ рд░реВрдк рд╕реЗ рдкрддрд╛ рдЪрд▓реЗрдЧрд╛ рдХрд┐ рдХреНрдпрд╛ рдЪрд▓рд╛рдирд╛ рд╣реИ ..

@Scellow @PRIMETSS рдореБрдЭреЗ рд╕рд╣рдордд рд╣реЛрдирд╛ рд╣реИ

рдпрд╣ рдЕрднреА рднреА рдПрдХ рдореБрджреНрджрд╛ рдХреИрд╕реЗ рд╣реИ? рдЗрд╕рдХреЗ рд▓рд┐рдП рдЫрдд рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдорд╛рдВрдЧ рдХреА рдЬрд╛ рд░рд╣реА рд╣реИред

рдЬрд╝рд┐рдк рдореЗрдВ рдЬреЛрдбрд╝ рдХреЗ рд╕рд╛рде рдЗрд╕ рдЕрд▓рдЧ рдлрд╝реЛрд▓реНрдбрд░ рдХреЗ рд▓рд┐рдП рд╣рд╛рдБ, рдПрдХ рдмрд┐рди рдореЗрдВ рдФрд░ рджреЛ рдлрд╝рд╛рдЗрд▓реЗрдВ рд╣реИрдВ, exe рдФрд░ рдмрд┐рдиред рдЖрд╕рд╛рди рд╡рд┐рддрд░рдгред

рдПрдХ рдФрд░ +1 рдХреЛ рдлрд┐рд░ рд╕реЗ рдЦреЛрд▓рдиреЗ рдХреЗ рд▓рд┐рдП рдФрд░ рдПрдХ рд╕реБрд╡рд┐рдзрд╛ рдХреЗ рд░реВрдк рдореЗрдВред

рдореИрдВ рдЙрдореНрдореАрдж рдХрд░ рд░рд╣рд╛ рдерд╛ рдХрд┐ рдЖрддреНрдо-рдирд┐рд╣рд┐рдд рддреИрдирд╛рддреА рдЖрддреНрдо-рдирд┐рд╣рд┐рдд рдереА рдФрд░ рдореБрдЭреЗ рдпрд╣рд╛рдБ рдЕрдкрдирд╛ рд░рд╛рд╕реНрддрд╛ рдорд┐рд▓ рдЧрдпрд╛ред рдореИрдВ рдпрд╣ рднреА рджреЗрдЦрдирд╛ рдЪрд╛рд╣реВрдВрдЧрд╛ред

рдХреЛрдИ рдХреИрд╕реЗ рдХрд╣ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рд╕рд┐рд░реНрдл рдПрдХ рдХреЙрд╕реНрдореЗрдЯрд┐рдХ рдореБрджреНрджрд╛ рд╣реИ? (рдХреЗрд╡рд▓ рдлреНрд░реЗрдорд╡рд░реНрдХ рдбреЗрд╡рд▓рдкрд░реНрд╕ ...)
рдХреЛрдИ рднреА рдЙрдкрдХрд░рдг рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдирд╣реАрдВ рд╕реЛрдЪрд╛ рдЬреЛ рд╕реНрдерд╛рдкрд┐рдд рдирд╣реАрдВ рд╣реИрдВ? (.NET рд╣рд▓ dll-hell, рдФрд░ .net рдХреЛрд░ рдЗрд╕реЗ рд╡рд╛рдкрд╕ рд▓рд╛рддрд╛ рд╣реИ)

рдореИрдВ рдмрд╕ рдЗрддрдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ рдХрд┐ рдореЗрд░рд╛ рдХрдорд╛рдВрдб рд▓рд╛рдЗрди рдЯреВрд▓ рдЖрддреНрдордирд┐рд░реНрднрд░ рд╣реЛред

рдпрд╣ рдмреБрд░рд╛ рд╣реИ, рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдмреБрд░рд╛ рд╣реИ!

+1

+1 рдореИрдВрдиреЗ рдмрд╕ .net рдХреЛрд░ рд░рдирдЯрд╛рдЗрдо рдХреЗ рдмрд┐рдирд╛ рдПрдХ рдХреНрд▓рд╕реНрдЯрд░ рдкрд░ рдПрдЬрд╝реНрдпреЛрд░ рдмреИрдЪ рдореЗрдВ рдХрд╕реНрдЯрдо рдЧрддрд┐рд╡рд┐рдзрд┐ рдЪрд▓рд╛рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХреА рд╣реИ рдФрд░ рдпрд╣ "рд╕реНрд╡-рдирд┐рд╣рд┐рдд" рд╕рдВрд╕реНрдХрд░рдг рдмрдирд╛рдиреЗ рд╡рд╛рд▓реА рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреА рдЙрдЪреНрдЪ рд╕рдВрдЦреНрдпрд╛ рдХреЛ рд╕рдВрднрд╛рд▓ рдирд╣реАрдВ рд╕рдХрддрд╛ рд╣реИред

Total size of resourceFiles cannot be more than 32768 characters

рдпрд╣ рдПрдХ рдЖрдзрд┐рдХрд╛рд░рд┐рдХ рд╕рдорд╛рдзрд╛рди рдирд╣реАрдВ рд╣реИ, рд▓реЗрдХрд┐рди рдпрд╣ рдЙрдкрдпреЛрдЧреА рд╣реЛ рд╕рдХрддрд╛ рд╣реИред рдореИрдВ рддрд╛рдирд╛ рдХрд╛ рд▓реЗрдЦрдХ рд╣реВрдБ, рдПрдХ рдЙрдкрдХрд░рдг рд╣реИ рдЬреЛ рдЖрдкрдХреЛ рд╕реНрд╡-рдирд┐рд╣рд┐рдд рдПрдХрд▓ рджреНрд╡рд┐рдЖрдзрд╛рд░реА рдЕрдиреБрдкреНрд░рдпреЛрдЧ рдмрдирд╛рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ: https://github.com/dgiagio/vp

рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рддрд╛рдирд╛ рдореВрд▓ рд░реВрдк рд╕реЗ рд╣рд░ рдХреЛрдИ рдпрд╣рд╛рдБ рдЦреЛрдЬ рд░рд╣рд╛ рд╣реИ! рдпрд╣ рдПрдХ рдПрдХрд▓ exe рдлрд╝рд╛рдЗрд▓ рдХреА рдХреНрд╖рдорддрд╛ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╣реИ, рдЬреЛ рднреА рдкреГрд╖реНрдарднреВрдорд┐ рдореЗрдВ рд╣реЛ, рдЕрдзрд┐рдХ рдХреБрдЫ рдирд╣реАрдВред NuGet рдкреИрдХреЗрдЬ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╕реЛрдЪреЗрдВ: рдпрд╣ рдПрдХ рдПрдХрд▓ .nuget рдлрд╝рд╛рдЗрд▓ рд╣реИ рдФрд░ рдпрд╣ рд╣реИ; рдпрд╣ рдПрдХ рдлрд╝рд╛рдЗрд▓ рдкреИрдХреЗрдЬрд┐рдВрдЧ рдЕрдиреНрдп рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдЕрдзрд┐рдХ рдЬрдЯрд┐рд▓ рдирд╣реАрдВ рд╣реИред

рддрд╛рдирд╛ рдПрдХ рдШрд┐рдиреМрдирд╛ рд╕рдорд╛рдзрд╛рди рд╣реИ, рдпрд╣ рд╡рд╣ рдирд╣реАрдВ рд╣реИ рдЬреЛ рд╣рдо рдЪрд╛рд╣рддреЗ рд╣реИрдВ

рд╣рдо рдХреНрдпрд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ:

dotnet publish --self-contained -c Release -r win10-x64

рдФрд░ рдпрд╣ рдЙрддреНрдкрд╛рджрди:

App.exe
runtime/

рдпрд╛ рдмреЗрд╣рддрд░ рдЬреИрд╕реЗ рдЬреАрдУ / рдЬрдВрдЧ рдЖрджрд┐

App.exe

рдмрд╛рдХреА рд╕рдм рдХреБрдЫ рдирд╣реАрдВ рдЪрд╛рд╣рддрд╛ рд╣реИ

Warp рдПрдХ App.exe рдХрд╛ рдЙрддреНрдкрд╛рджрди рдХрд░рддрд╛ рд╣реИ ... рдпрд╣ рдХреИрд╕реЗ рд╣реИрдХ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ? рдЬрд╛рд╣рд┐рд░ рд╣реИ рдХрд┐ рдпрд╣ рдлреНрд░реЗрдорд╡рд░реНрдХ рдХрд╛ рд╣рд┐рд╕реНрд╕рд╛ рдирд╣реАрдВ рд╣реИ, рд▓реЗрдХрд┐рди "рд╡рди рдПрдХреНрд╕ рдлрд╛рдЗрд▓" рд▓рдХреНрд╖реНрдп рдХреЛ рдкреНрд░рд╛рдкреНрдд рдХрд░рддрд╛ рд╣реИред

рдпрд╣ рдореЗрд░рд╛ рдорддрд▓рдм рд╣реИ, рдпрд╣ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд╡реНрдпрд╡рд╣рд╛рд░ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП, 3 рдкрд╛рд░реНрдЯреА рд╕рдорд╛рдзрд╛рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП (рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ)

рддрд╛рдирд╛ рдПрдХ рдЗрд▓рд╛рдЬ рдХрд╛ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред рдЖрдкрдХреЗ рдХрд╛рдо рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рдж @dgiagio!

+1

рдореИрдВ рдХрд┐рд╕реА рдкреНрд░рдХрд╛рд░ рдХреА рдПрдХрд▓-рдлрд╝рд╛рдЗрд▓ рд╕рдВрдЧреНрд░рд╣ рджреЗрдЦрдирд╛ рдмрд╣реБрдд рдкрд╕рдВрдж рдХрд░рддрд╛ рд╣реВрдВ рдЬреЛ рдирд┐рд╖реНрдкрд╛рджрди рдпреЛрдЧреНрдп рдФрд░ рд╕рднреА рдирд┐рд░реНрднрд░рддрд╛рдУрдВ рдХреЛ рдмрдВрдбрд▓ рдХрд░рддрд╛ рд╣реИред рджреЗрд╢реА рдХреЛ рд╢рд╛рдорд┐рд▓ рдХрд░рдиреЗ рдХреА рдЬрд░реВрд░рдд рдирд╣реАрдВ рд╣реИ - рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╕рд┐рд╕реНрдЯрдо рдкрд░ рдбреЙрдЯрдиреЗрдЯ рдХреЛрд░ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдареАрдХ рд╣реИред рдЬрд╛рд╡рд╛ рдХреА рдЬрд╛рд░ рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЗ рд╕рдорд╛рди рдХреБрдЫред рдПрдХ рдбрд╛рд░ рдлрд╛рдЗрд▓?

рдХреБрдЫ рдЗрд╕ рддрд░рд╣:
рдбреЙрдЯрдиреЗрдЯ рдкреНрд░рдХрд╛рд╢рд┐рдд - рд╕реНрд╡рдпрдВ рдирд┐рд╣рд┐рдд
рдбреЙрдЯрдиреЗрдЯ рд░рди - рд╕реНрд╡-рдирд┐рд╣рд┐рдд MyApp.dar

рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЕрдм рдЗрд╕рдХреЗ рд▓рд┐рдП рдПрдХ рдкреНрд░рд╕реНрддрд╛рд╡ рд╣реИ: https://github.com/dotnet/designs/pull/52/files?short_path=28dba55

рдпрд╣рд╛рдБ рдЯреНрд░реИрдХрд┐рдВрдЧ рдореБрджреНрджрд╛ рд╣реИ: https://github.com/dotnet/coreclr/issues/20287

рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, @shanselman рдХреЗ рдкрд╛рд╕ рддрд╛рдирд╛ рд╕рдорд╛рдзрд╛рди рдкрд░ рдПрдХ рдмреНрд▓реЙрдЧ рдкреЛрд╕реНрдЯ рд╣реИ:

https://www.hanselman.com/blog/BrainstormingCreatingASmallSingleSelfcontainExecutableOutOfANETCoreApplication.aspx

рдореИрдВрдиреЗ рдкреНрд░рд╕реНрддрд╛рд╡ рдкрдврд╝рд╛ рдФрд░ рдореИрдВрдиреЗ рдпрд╣ рджреЗрдЦрд╛:

image

рдпрд╣ рдореЗрд░реЗ рджрд┐рдорд╛рдЧ рдореЗрдВ рдирд╣реАрдВ рд╣реИ, рдпрд╣ рдПрдХ рдзреАрдореА рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреА рддрд░рд╣ рд▓рдЧрддрд╛ рд╣реИ, рдореВрд▓ рд░реВрдк рд╕реЗ рдмрд╕ рд╕рдм рдХреБрдЫ zipping ..
рд╣рд╛рд▓рд╛рдВрдХрд┐ рдореИрдВ рд╕рднреА рдХреЛрдб рдПрдХ рд╣реА рдирд┐рд╖реНрдкрд╛рджрди рдпреЛрдЧреНрдп / dll рдореЗрдВ рд╡рд┐рд▓реАрди рд╣реЛ рдЬрд╛рдКрдВрдЧрд╛? рдпрд╛ рд╢рд╛рдпрдж рдореИрдВ рдкреНрд░рд╕реНрддрд╛рд╡ рдореЗрдВ рдХреБрдЫ рдпрд╛рдж рдХрд┐рдпрд╛?

@RUSshy рдХреНрдпрд╛ рдЖрдк рд╕рднреА рдкреНрд░рдмрдВрдзрд┐рдд рдХреЛрдб рдХреЗ рдореВрд▓-рд╕рдВрдХрд▓рди рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдкреВрдЫ рд░рд╣реЗ рд╣реИрдВ рдФрд░ рдПрдХ рдирд┐рд╖реНрдкрд╛рджрди рдпреЛрдЧреНрдп (рдХреЛрд░рдЖрд░рдЯреА тАЛтАЛрдХреЗ рд░реВрдк рдореЗрдВ) рдкрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рдм рдХреБрдЫ рдПрдХ рд╕рд╛рде рдЬреЛрдбрд╝ рд░рд╣реЗ рд╣реИрдВ? рдпрд╣ .Net рдХреЛрд░ рдореЗрдВ рд╡рд░реНрддрдорд╛рди рдПрдХрд▓-рдлрд╝рд╛рдЗрд▓ рдХрд╛рд░реНрдп рдХреЗ рд▓рд┐рдП рдПрдХ рд▓рдХреНрд╖реНрдп рдирд╣реАрдВ рд╣реИред

рд╣рд╛рд▓рд╛рдВрдХрд┐, рдбрд┐рд╕реНрдХ рдирд┐рд╖реНрдХрд░реНрд╖рдг рдФрд░ рд╕реНрдЯрд╛рд░реНрдЯрдЕрдк рд╕рдордп рдХреЛ рдХрдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкреНрд░рд╕реНрддрд╛рд╡рд┐рдд рд╕рдорд╛рдзрд╛рди рд╣реИрдВ (рдЙрджрд╛: рдмрдВрдбрд▓ рд╕реЗ рд╕реАрдзреЗ рдХреБрдЫ рдлрд╝рд╛рдЗрд▓ рдкреНрд░рдХрд╛рд░ рд▓реЛрдб рдХрд░реЗрдВ, рдирд┐рдХрд╛рд▓реЗ рдЧрдП рдлрд╝рд╛рдЗрд▓реЛрдВ рдХрд╛ рдкреБрди: рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ )ред рдПрдХрд▓-рдлрд╝рд╛рдЗрд▓ рд╕рдорд╛рдзрд╛рди рдХреЗ рд╡рд┐рдХрд╛рд╕ рдХреЗ рдЪрд░рдгреЛрдВ рдХрд╛ рд╡рд░реНрдгрди рдпрд╣рд╛рдВ рдХрд┐рдпрд╛ рдЧрдпрд╛

CC: @JffschwMSFT

рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рдирд┐рдХрд╛рд▓рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдХреНрдпреЛрдВ рд╣реИ? рд╣рдо ILMerge рдХреЗ рд╕рд╛рде .NET рдореЗрдВ рдЗрд╕реЗ рдкреНрд░рд╛рдкреНрдд рдХрд░рддреЗ рдереЗред

@ рдлрд┐рд▓рд┐рдк-рд╣реИрдбрди, рдЬреИрд╕рд╛ рдХрд┐ рдпрд╣рд╛рдВ рд╡рд░реНрдгрд┐рдд

ILMerge , IL рдХреЛ рдХрдИ рдЕрд╕реЗрдВрдмрд▓реА рд╕реЗ рдПрдХ рдореЗрдВ рдЬреЛрдбрд╝рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдЗрд╕ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдореЗрдВ, рдорд░реНрдЬ рдХреА рдЧрдИ рдЕрд╕реЗрдВрдмрд▓реА рдХреА рдореВрд▓ рдкрд╣рдЪрд╛рди рдЦреЛ рджреЗрддрд╛ рд╣реИред рдЗрд╕рд▓рд┐рдП, рдореВрд▓ рд╡рд┐рдзрд╛рдирд╕рднрд╛ рдирд╛рдореЛрдВ рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рдкреНрд░рддрд┐рдмрд┐рдВрдм рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдЬреИрд╕реА рдЪреАрдЬреЗрдВ рд╡рд┐рдлрд▓ рд╣реЛ рдЬрд╛рдПрдВрдЧреАред рдпрджрд┐ рд╡реЗ рдЗрд╕ рдкрд░рд┐рд╡рд░реНрддрди рдХреЛ рд╕рд╣рди рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рддрдм рднреА рдРрдк ILMerge рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

CoreRT рдХреБрдЫ рдФрд░ рд╣реИ, рдЖрдкрдХреЗ .NET рдХреЛрдб рдХрд╛ AOT рд╕рдВрдХрд▓рди, рдпрд╣ рджрд┐рд▓рдЪрд╕реНрдк рд▓рдЧ рд░рд╣рд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдЕрднреА рддрдХ рддреИрдпрд╛рд░ рдирд╣реАрдВ рд╣реИ (рдХрд╛рд╢ MS рдЗрд╕ рдкрд░ рдзреНрдпрд╛рди рдХреЗрдВрджреНрд░рд┐рдд рдХрд░рддрд╛, рдФрд░ рдЕрдзрд┐рдХ рд╕рдВрд╕рд╛рдзрди рдЖрд╡рдВрдЯрд┐рдд рдХрд░рддрд╛ред рдпрд╣ рд╡рд╣реА рд╣реИ рдЬреЛ рд▓реЛрдЧ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рдФрд░ рд╡реЗ GO рдкрд░ рдХреНрдпреЛрдВ рдЪрд▓реЗ рдЧрдП )

рд╡реИрд╕реЗ рднреА, рдореЗрд░реЗ рдкрд╛рд╕ рд╡рд┐рд╕реНрддрд╛рд░ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рддрдХрдиреАрдХреА рдЬреНрдЮрд╛рди рдирд╣реАрдВ рд╣реИ, рд▓реЗрдХрд┐рди рдЙрдкрдпреЛрдЧ рдХрд╛ рдорд╛рдорд▓рд╛ рд╣реИ:

рдПрдХ рдПрдХрд▓ рдЖрддреНрдо-рдирд┐рд╖реНрдкрд╛рджрди рдпреЛрдЧреНрдп рдкреНрд░рдХрд╛рд╢рд┐рдд рдХрд░реЗрдВ, рдФрд░ рдмрд╕, рдХреБрдЫ рднреА рдирд╣реАрдВ рдирд┐рдХрд╛рд▓рд╛, рдХреБрдЫ рднреА рдирд╣реАрдВ рдирд┐рдХрд╛рд▓рд╛ рдЧрдпрд╛, рдХреЛрдИ рдЙрдкрд░рд┐ рдирд╣реАрдВ, рдмрд╕ рдирд┐рд╖реНрдкрд╛рджрди рдпреЛрдЧреНрдп

@ рд╕реНрд╡рд╛рд░реВрдк-рд╢реНрд░реАрдзрд░ рдХреНрдпрд╛ рдЖрдкрдХреЗ рдкрд╛рд╕ рд▓рд┐рдирдХреНрд╕ рдкрд░ рдбреЙрдЯрдиреЗрдЯ рдХреЛрд░ рдХреЗ рд▓рд┐рдП рдХрд╛рдо рдХрд░рдиреЗ рдХрд╛ рдПрдХ рдЙрджрд╛рд╣рд░рдг рд╣реИ? https://github.com/dotnet/ILMerge/blob/master/ILMerge/ILMerge.csproj#L13 рдХреЗ рдЕрдиреБрд╕рд╛рд░ рдпрд╣ рдПрдХ рд╡рд┐рдВрдбреЛрдЬрд╝ / рдореЛрдиреЛ рдХреЗрд╡рд▓ рдкрд░рд┐рдпреЛрдЬрдирд╛ рд╣реИред

@thefringeninja ILMerge рдПрдХ рд╡рд┐рдВрдбреЛрдЬрд╝ рдЯреВрд▓ рд╣реИ, рдореИрдВ ILMerge рдХреЛ рдЕрдиреНрдп рдкреНрд▓реЗрдЯрдлреЙрд░реНрдо рдкрд░ рдкреЛрд░реНрдЯ рдХрд░рдиреЗ рдХреА рдХрд┐рд╕реА рдпреЛрдЬрдирд╛ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдирд╣реАрдВ рдЬрд╛рдирддрд╛ред
рд╕рд┐рдВрдЧрд▓-рдлрд╝рд╛рдЗрд▓ рд╕рдорд╛рдзрд╛рди рдХреЛ рдХреНрд░реЙрд╕-рдкреНрд▓реЗрдЯрдлрд╝реЙрд░реНрдо рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред рдпрд╣ рд╡рд┐рдХрд╛рд╕ рдХреА рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдореЗрдВ рд╣реИред

@ рдХрд╛рд░реЗрд▓рдЬрд╝
рддреИрдирд╛рддреА рдХреЗ рд▓рд┐рдП рддреИрдирд╛рдд!рдЕрдЧрд░ 1-3 рдпрд╛ рдХрдо рдХреА рддрд░рд╣ рдПрдХ рдпрд╛ рдЕрдзрд┐рдХ рдлрд╝рд╛рдЗрд▓реЗрдВ Thats рдХреЗ рд▓рд┐рдП рдмреЗрд╣рддрд░ рд╣реЛрдЧрд╛ Deploy (Inlcude рдкрдмреНрд▓рд┐рд╢, рдЕрдкрдбреЗрдЯ)!

CoreRT AOT рд╣реИ
рд▓реЗрдХрд┐рди ppl рдПрдУрдЯреА рдЪрд╛рд╣рддреЗ рд╣реИрдВ?
рдкрд░рд┐рдпреЛрдЬрдирд╛ (CoreRT) рд╣рдореЗрд╢рд╛ рдкрдврд╝рдиреЗ рдХреЗ рд▓рд┐рдП рдирд╣реАрдВ (рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ 2014 рд╕реЗ)ред рдЕрдм 2019 рд╣реИ! ( рд▓рдЧрднрдЧ 5 рд╡рд░реНрд╖ )
рдХреНрдпрд╛ рдПрдХ рдЕрдирдореЛрд▓ рднрд╛рд╖рд╛ рдХреЗ рд▓рд┐рдП рдПрдХ рдХреАрдорддреА 5 рд╕рд╛рд▓!рдЕрдЧрд▓реА рд░рд┐рд▓реАрдЬ рдХреЗ рд▓рд┐рдП рднреА рдХреЛрдИ рдпреЛрдЬрдирд╛ рдирд╣реАрдВ CoreRT !!!рдкреАрдкреАрдПрд▓ рдХреЛ рдФрд░ 5 рд╕рд╛рд▓ рддрдХ рдЗрдВрддрдЬрд╛рд░ рдХрд░рдиреЗ рджреЗрдВ?

@ рд╕реНрд╡рд░-рд╢реНрд░реАрдзрд░ рдпрд╣ рджреБрд░реНрднрд╛рдЧреНрдпрдкреВрд░реНрдг рд╣реИред ILMerge / ILRepack рдкреБрд╕реНрддрдХрд╛рд▓рдп рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЗ рд▓рд┐рдП рд╣реАрд░реЗ рдХреА рдирд┐рд░реНрднрд░рддрд╛ рдХреА рд╕рдорд╕реНрдпрд╛ рд╕реЗ рдмрдЪрдиреЗ рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рдЕрдЪреНрдЫрд╛ рд╣реИред

.NET Core 3.0 рдореЗрдВ рдЗрд╕рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рдиреЗ рдХреА рдпреЛрдЬрдирд╛ рд╣реИ - @richlander рдЖрдкрдХреЛ рд╕реНрдЯреЗрдЯрд╕ рдкрд░ рдЕрдкрдбреЗрдЯ рдХрд░ рд╕рдХрддрд╛ рд╣реИред
рдЗрд╕рдХрд╛ рдЙрд▓реНрд▓реЗрдЦ .NET рдХреЛрд░ 3.0 рдмреНрд▓реЙрдЧ рдкреЛрд╕реНрдЯреЛрдВ рдореЗрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ - рдЬреИрд╕реЗ рдпрд╣рд╛рдБ: https://devblogs.microsoft.com/dotnet/net-core-3-and-support-for-windows-desktop-applications/ "рд╕рд╛рдЗрдб-рдмрд╛рдп-" рдореЗрдВ рдкрдХреНрд╖ рдФрд░ рдЕрдиреБрдкреНрд░рдпреЛрдЧ-рд╕реНрдерд╛рдиреАрдп рдкрд░рд┐рдирд┐рдпреЛрдЬрди "рдЕрдиреБрднрд╛рдЧред
рдЗрд╕реЗ рднреА рдкрдврд╝реЗрдВ: https://www.hanselman.com/blog/BrainstormingCreatingASmallSingleSelfcontainExecutableOutOfANETCoreApplication.aspx

.net рдХреЛ рдЫреЛрдЯреЗ рдПрдХрд▓ рд╕реНрд╡-рдирд┐рд╣рд┐рдд рдирд┐рд╖реНрдкрд╛рджрди рдпреЛрдЧреНрдп рдЙрддреНрдкрд╛рджрди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЗрди рд╕рднреА рд╣реИрдХ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реЛрдиреА рдЪрд╛рд╣рд┐рдП .. рдпрд╣ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд╡реНрдпрд╡рд╣рд╛рд░ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП, рдЖрдкрдХреЛ рдЬреАрдУ рджреНрд╡рд╛рд░рд╛ рдЦрд╛рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЬрдВрдЧ рднреА рдЖ рд░рд╣реА рд╣реИ, CoreRT рдпрд╛ ILMerge рдкрд░ рдзреНрдпрд╛рди рдХреЗрдВрджреНрд░рд┐рдд рдХрд░реЗрдВ, .net рдХреЛрд░ рдРрдк рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рд╣реИрдВред рд▓реЛрдб рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рднреА рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЗ рдХрд╛рд░рдг рд╢реБрд░реВ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд▓рдВрдмреЗ рд╕рдордп, рдкреНрд░рд╕реНрддрд╛рд╡ рдореЗрдВ рдЙрд▓реНрд▓рд┐рдЦрд┐рдд рдХреА рддрд░рд╣ рдЬрд╝рд┐рдк / рдЕрдирдЬрд╝рд┐рдк рдХреЗ рд╕рд╛рде рдЗрд╕реЗ рдФрд░ рдЕрдзрд┐рдХ рдЬреЛрдбрд╝рдирд╛ рдирд╣реАрдВ рд╣реИ, рдпрд╣ рдЬрд╛рдиреЗ рдХрд╛ рддрд░реАрдХрд╛ рдирд╣реАрдВ рд╣реИ

.net рдХреЛ рдЫреЛрдЯреЗ рдПрдХрд▓ рд╕реНрд╡-рдирд┐рд╣рд┐рдд рдирд┐рд╖реНрдкрд╛рджрди рдпреЛрдЧреНрдп рдЙрддреНрдкрд╛рджрди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЗрди рд╕рднреА рд╣реИрдХ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реЛрдиреА рдЪрд╛рд╣рд┐рдП .. рдпрд╣ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд╡реНрдпрд╡рд╣рд╛рд░ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП, рдЖрдкрдХреЛ рдЬреАрдУ рджреНрд╡рд╛рд░рд╛ рдЦрд╛рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЬрдВрдЧ рднреА рдЖ рд░рд╣реА рд╣реИ, CoreRT рдпрд╛ ILMerge рдкрд░ рдзреНрдпрд╛рди рдХреЗрдВрджреНрд░рд┐рдд рдХрд░реЗрдВ, .net рдХреЛрд░ рдРрдк рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рд╣реИрдВред рд▓реЛрдб рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рднреА рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЗ рдХрд╛рд░рдг рд╢реБрд░реВ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд▓рдВрдмреЗ рд╕рдордп, рдкреНрд░рд╕реНрддрд╛рд╡ рдореЗрдВ рдЙрд▓реНрд▓рд┐рдЦрд┐рдд рдХреА рддрд░рд╣ рдЬрд╝рд┐рдк / рдЕрдирдЬрд╝рд┐рдк рдХреЗ рд╕рд╛рде рдЗрд╕реЗ рдФрд░ рдЕрдзрд┐рдХ рдЬреЛрдбрд╝рдирд╛ рдирд╣реАрдВ рд╣реИ, рдпрд╣ рдЬрд╛рдиреЗ рдХрд╛ рддрд░реАрдХрд╛ рдирд╣реАрдВ рд╣реИ

рдЬреИрд╕рд╛ рдХрд┐ рдЖрдк рдЪрд╛рд╣рддреЗ рд╣реИрдВред рдиреЗрдЯ рдХреЛ рдЬреАрд╡рд┐рдд рд░рд╣рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдкреАрдкреАрдПрд▓ рдореЗрдВ рдЬрд╛рд╡рд╛ рд╣реИред
рдЧреЛ рдпрд╛ рд░рд╕реНрдЯ рдпрд╛ рдбрд▓рд╛рдВрдЧ рд╕рд┐рдВрдЧрд▓ рдПрдХреНрдЬрд╝реАрдХреНрдпреВрдЯрд┐рд╡ рдкреНрд░реЛрдЧреНрд░рд╛рдо рдХреЛ рдмрд┐рд▓реНрдб рдЯрд╛рд░рдЧреЗрдЯ рдХрд╛ рд╕рдорд░реНрдерди рдирд╣реАрдВ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП, рдХреНрдпреЛрдВрдХрд┐ рдЙрдирдХреЗ рдкрд╛рд╕ рдмрдХрд╡рд╛рд╕ рдЬрд╝рд┐рдк / рдЕрдирдЬрд╝рд┐рдк рд╣реИ!

@ рд░реВрд╖реА

.net рдХреЛ рдЫреЛрдЯреЗ рдПрдХрд▓ рд╕реНрд╡-рдирд┐рд╖реНрдкрд╛рджрди рдпреЛрдЧреНрдп рдЙрддреНрдкрд╛рджрди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЗрди рд╕рднреА рд╣реИрдХреНрд╕ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реЛрдиреА рдЪрд╛рд╣рд┐рдП

рдорд╛рдирд╛ред рдЙрд╕реА рд╕рдордп, .NET рдЕрдиреНрдп рднрд╛рд╖рд╛рдУрдВ рдкрд░ рдХреБрдЫ рд╕реБрд╡рд┐рдзрд╛рдПрдБ рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИ рдЬреЛ рдПрдХ рд╕реНрдереИрддрд┐рдХ рд▓рд┐рдВрдХрд░ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛рдУрдВ рдХреЗ рд╕рд╛рде рд╕рд╛рдордВрдЬрд╕реНрдп рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЪреБрдиреМрддреАрдкреВрд░реНрдг рд╣реИрдВ (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдлреНрд▓рд╛рдИ рдХреЛрдб рдкреАрдврд╝реА, рдкреНрд░рддрд┐рдмрд┐рдВрдм, рдбреЗрдЯрд╛ рдмрд╛рдЗрдВрдбрд┐рдВрдЧ рдЖрджрд┐ рдкрд░)ред рд╣рдордиреЗ рдЗрди рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдХреЛ рдЙрди рдкрд░рд┐рджреГрд╢реНрдпреЛрдВ рдореЗрдВ рд╢рд╛рдорд┐рд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкреНрд░рдпреЛрдЧ рдХрд┐рдпрд╛ рд╣реИ, рдЬрд╣рд╛рдБ рдПрдХрд▓ рдлрд╝рд╛рдЗрд▓ / рд╕реНрдереИрддрд┐рдХ рд▓рд┐рдВрдХрд┐рдВрдЧ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реИред рд╣рдордиреЗ рдЧреНрд░рд╛рд╣рдХ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рд╕реЗ рд╕реАрдЦрд╛ рд╣реИ рдХрд┐ рдЗрд╕рдХрд╛ рдкрд░рд┐рдгрд╛рдо .NET рдЬреИрд╕рд╛ рдирд╣реАрдВ рд▓рдЧрддрд╛ рд╣реИ, рдЖрдВрд╢рд┐рдХ рд░реВрдк рд╕реЗ рдХреНрдпреЛрдВрдХрд┐ рдкреБрд╕реНрддрдХрд╛рд▓рдпреЛрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ рдЖрдк рдкрд╛рд░рд┐рд╕реНрдерд┐рддрд┐рдХ рддрдВрддреНрд░ рд╕реЗ рдЕрддреНрдпрдзрд┐рдХ рдЧрд┐рд░рд╛рд╡рдЯ рдХрд╛ рдЙрдкрднреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

рддреЛ рдПрдХ рд▓рд┐рдВрдХрд░ рдХреЛ рдареАрдХ рд╕реЗ рдХрд░рдирд╛ рдЬреЛ рдЙрди рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдХреА рдирд┐рд╖реНрдард╛ рд╕реЗ рд╕рдордЭреМрддрд╛ рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ рдЬрд┐рдиреНрд╣реЗрдВ рд╣рдордиреЗ .NET рдореЗрдВ рдПрдХ рдирд┐рд░реНрднрд░рддрд╛ рдФрд░ рдкреНрд░реЗрдо рдХреЗ рд░реВрдк рдореЗрдВ рд▓рд┐рдпрд╛ рд╣реИ, рдПрдХ рдХрдард┐рди рд╕рдорд╕реНрдпрд╛ рд╣реИред рдЗрд╕реЗ рд╣рд▓ рдХрд░рдиреЗ рдХреЗ рднрд╛рдЧ рдХреЗ рд░реВрдк рдореЗрдВ, рд╣рдо рд╡рд┐рднрд┐рдиреНрди рджреГрд╖реНрдЯрд┐рдХреЛрдгреЛрдВ рдХреЗ рд╕рд╛рде рдкреНрд░рдпреЛрдЧ рдХрд░ рд░рд╣реЗ рд╣реИрдВред рдЖрдк рдЗрд╕ рд╣реИрдХ рдХреЛ рдХрд╣рддреЗ рд╣реИрдВ, рдореИрдВ рдЗрд╕ рдЦреБрд▓реЗ рджрд┐рдорд╛рдЧ рдФрд░ рдмреЙрдХреНрд╕ рдХреЗ рдмрд╛рд╣рд░ рд╕реЛрдЪрдиреЗ рдХреЗ рд▓рд┐рдП рддреИрдпрд╛рд░ рд╣реВрдВред рд▓реЗрдХрд┐рди рд╕рд┐рд░реНрдл рдЖрдВрдЦ рдореВрдВрджрдХрд░ .NET рдХреЛ рдЧреЛ / рд░рд╕реНрдЯ / C ++ рдореЗрдВ рдмрджрд▓рдирд╛ рд╕рд╣реА рдЬрд╡рд╛рдм рдирд╣реАрдВ рд╣реИред

рд╣рдордиреЗ рдЗрди рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдХреЛ рдЙрди рдкрд░рд┐рджреГрд╢реНрдпреЛрдВ рдореЗрдВ рд╢рд╛рдорд┐рд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкреНрд░рдпреЛрдЧ рдХрд┐рдпрд╛ рд╣реИ, рдЬрд╣рд╛рдБ рдПрдХрд▓ рдлрд╝рд╛рдЗрд▓ / рд╕реНрдереИрддрд┐рдХ рд▓рд┐рдВрдХрд┐рдВрдЧ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реИред рд╣рдордиреЗ рдЧреНрд░рд╛рд╣рдХ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рд╕реЗ рд╕реАрдЦрд╛ рд╣реИ рдХрд┐ рдЗрд╕рдХрд╛ рдкрд░рд┐рдгрд╛рдо .NET рдЬреИрд╕рд╛ рдирд╣реАрдВ рд▓рдЧрддрд╛ рд╣реИ, рдЖрдВрд╢рд┐рдХ рд░реВрдк рд╕реЗ рдХреНрдпреЛрдВрдХрд┐ рдкреБрд╕реНрддрдХрд╛рд▓рдпреЛрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ рдЖрдк рдкрд╛рд░рд┐рд╕реНрдерд┐рддрд┐рдХ рддрдВрддреНрд░ рд╕реЗ рдЕрддреНрдпрдзрд┐рдХ рдЧрд┐рд░рд╛рд╡рдЯ рдХрд╛ рдЙрдкрднреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

рдХреНрдпрд╛ рдЯреАрдо рдиреЗ рдиреЗрдЯ рд╡рд┐рдХрд╛рд╕ рдФрд░ рд╡рд┐рд╡рд╢ рд╡рд╛рддрд╛рд╡рд░рдг рдХреЗ рд▓рд┐рдП .net рдХрд╛ рдПрдХ рдЕрд▓рдЧ рд╕рдВрд╕реНрдХрд░рдг рдмрдирд╛рдиреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╕реЛрдЪрд╛ рд╣реИ, рдЬреИрд╕реЗ рдХрд┐ рдЬреЗрдЯрдмреНрд░реЗрдиреНрд╕ рдиреЗ рдХреЛрдЯрд▓рд┐рди рдЬреЗрд╡реАрдПрдо / рдХреЛрдЯрд▓рд┐рди NATIVE рдХреЗ рд╕рд╛рде рдХрд┐рдпрд╛ рдерд╛?

рдЬреИрд╕рд╛ рдХрд┐ рдЖрдкрдиреЗ рдХрд╣рд╛ рдХрд┐ рдкреНрд░рддреНрдпреЗрдХ рдЙрдкрдпреЛрдЧ рдХреЗ рдорд╛рдорд▓реЛрдВ рдореЗрдВ .net рдлрд┐рдЯ рд╣реЛрдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░рдирд╛ рд╕рдмрд╕реЗ рдЖрд╕рд╛рди рд╡рд┐рдХрд▓реНрдк рдирд╣реАрдВ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдПрдХ рд╡рд┐рд╢рд┐рд╖реНрдЯ рд╕реНрд╡рд╛рдж рдЗрд╕ рд╕рдорд╕реНрдпрд╛ рдХрд╛ рд╕рд╣реА рдЬрд╡рд╛рдм рд╣реЛ рд╕рдХрддрд╛ рд╣реИ

рдФрд░ tbh, afaik, рдпрд╣ рд╕рдорд╕реНрдпрд╛ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдкрд╣рд▓реЗ рд╕реЗ рдореМрдЬреВрдж рдирд╣реАрдВ рд╣реИ .net рдХреЛрд░ рдХреНрдпреЛрдВрдХрд┐ рд╣рд░ рд╡рд┐рдВрдбреЛрдЬрд╝ рдЗрдВрд╕реНрдЯрд╛рд▓ рдореЗрдВ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА .net рдлреНрд░реЗрдорд╡рд░реНрдХ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдЖрдкрдХреЛ рдХреЗрд╡рд▓ рдЕрдкрдиреЗ рдХреБрдЫ KBs exe рдХреЛ рд╡рд┐рддрд░рд┐рдд рдХрд░рдирд╛ рдерд╛, рдФрд░ рдореБрдЭреЗ рдЬреЛ рдЧреБрд╕реНрд╕рд╛ рдЖрддрд╛ рд╣реИ, рд╡рд╣ рдЗрд╕ рддрд░рд╣ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╕реЛрдЪрд╛ рдирд╣реАрдВ рд╣реИред рдореБрджреНрджрд╛ рдЬрдм рдбрд┐рдЬрд╛рдЗрди .net рдХреЛрд░ рдЬреЛ рдореВрд▓ рд░реВрдк рд╕реЗ .net рдлреНрд░реЗрдорд╡рд░реНрдХ рдХрд╛ рдкреБрдирд░реНрд▓реЗрдЦрди рдерд╛ .. рдпрд╣реА рдХрд╛рд░рдг рд╣реИ рдХрд┐ рдореИрдВ рдХрд╣ рд░рд╣рд╛ рд╣реВрдВ рдХрд┐ рдЗрди рд╡рд┐рдХрд▓реНрдкреЛрдВ рдХрд╛ рдЙрд▓реНрд▓реЗрдЦ рд╕рд╛рджреЗ рд╣реИрдХ рд╣реИрдВ, рд╡реЗ рдпрд╣рд╛рдВ рдбрд┐рдЬрд╛рдЗрди рдЧрд▓рддрд┐рдпреЛрдВ рдХреЛ рдареАрдХ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╣реИрдВ

Https://github.com/dotnet/designs/blob/master/accepted/single-file/staging.md рдкрдврд╝рдиреЗ рдХреЗ рдмрд╛рдж рдкреНрд░рд╕реНрддрд╛рд╡ рдХреЗ рд▓рд┐рдП рдФрд░ рдЕрдзрд┐рдХ рдХрджрдо рд╣реЛрдиреЗ рд▓рдЧрддреЗ рд╣реИрдВ, рдФрд░ рдпрд╣ zip / unzip рдкрд░ рд╕рдорд╛рдкреНрдд рдирд╣реАрдВ рд╣реЛрддрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдРрд╕рд╛ рдирд╣реАрдВ рд╣реИ рдПрдХ рд╣рд╛рд░реА рд╣реБрдИ рд▓рдбрд╝рд╛рдИ, рдЙрдореНрдореАрдж рд╣реИ рдХрд┐ рдЯреАрдо рдХреБрдЫ рд╣рд▓реНрдХрд╛ рд▓рд╛рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛрдЧреА, рдЬрд┐рд╕рдХрд╛ рдЙрд▓реНрд▓реЗрдЦ рдЙрд╕ рджрд╕реНрддрд╛рд╡реЗрдЬрд╝ рдореЗрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдЕрдЪреНрдЫрд╛ рд╣реИ!

рдЗрд╕ рддрд░рд╣ рдХреА рдЪреАрдЬреЗрдВ рд╡рд┐рдВрдбреЛрдЬ рдПрдХ рдЦрд┐рд▓реМрдирд╛ рдУрдПрд╕ рдХреНрдпреЛрдВ рдмрдиреА рд╣реБрдИ рд╣реИрдВред

@kjkrum рдЬреИрд╕реА рдмрд╛рддреЗрдВ рдХреНрдпрд╛?

@ рдпрд╣ рддрдм рд╣реИ рдЬрдм рд▓реЛрдЧ рдХрд╣рддреЗ рд╣реИрдВ рдХрд┐ рд╡реЗ рдирд╣реАрдВ рдЬрд╛рдирддреЗ рдХрд┐ рд╡реЗ рдХреНрдпрд╛ рдХрд░ рд░рд╣реЗ рд╣реИрдВред

@ рдХреНрд░рд┐рдЙ рдереНрд░реВ рдЬреИрд╕реА рдЪреАрдЬреЗрдВ рдПрдХ рд╕реНрдЯреИрдВрдбрдЕрд▓реЛрди рдирд┐рд╖реНрдкрд╛рджрди рдпреЛрдЧреНрдп рдмрдирд╛рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рдирд╣реАрдВ рд╣реИрдВ, рдФрд░ рдРрд╕рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдЬрд░реВрд░рдд рд╕реЗ рдмреЗрдЦрдмрд░ рдмрд░реНрдЦрд╛рд╕реНрддрдЧреАред рдЕрд╕реНрддрд┐рддреНрд╡ рдореЗрдВ рдмрд╣реБрдд рдЕрдзрд┐рдХ рд╣рд░ рджреВрд╕рд░реА рдирд┐рд░реНрдорд╛рдг рдкреНрд░рдгрд╛рд▓реА рди рдХреЗрд╡рд▓ рдПрдХ рд╕рд╛рдВрдЦреНрдпрд┐рдХреАрдп рд░реВрдк рд╕реЗ рдЬреБрдбрд╝реЗ рдирд┐рд╖реНрдкрд╛рджрди рдпреЛрдЧреНрдп рдХрд╛ рдирд┐рд░реНрдорд╛рдг рдХрд░реЗрдЧреА, рдпрд╣ рдирд┐рд░реНрднрд░рддрд╛ рдХреЗ рдЕрдкреНрд░рдпреБрдХреНрдд рднрд╛рдЧреЛрдВ рдХреЛ рдЫреАрди рд▓реЗрдЧреАред рд╕реНрдЯреНрд░рд┐рдкрд┐рдВрдЧ рдирд┐рд░реНрднрд░рддрд╛ рдХрдо рд╕реЗ рдХрдо рдПрдХ рджрд╢рдХ рдХреЗ рд▓рд┐рдП рдПрдХ рдорд╛рдирдХ рд╡рд┐рд╢реЗрд╖рддрд╛ рд░рд╣реА рд╣реИ; рд╕рдВрдХрд▓рдХ рдХреЗ рдЖрд╡рд┐рд╖реНрдХрд╛рд░ рдХреЗ рдмрд╛рдж рд╕реЗ рд╕реНрдерд┐рд░ рд▓рд┐рдВрдХрд┐рдВрдЧред

@ рдХреНрд░рд┐рдЙ рдереНрд░реВ рдЬреИрд╕реА рдЪреАрдЬреЗрдВ рдПрдХ рд╕реНрдЯреИрдВрдбрдЕрд▓реЛрди рдирд┐рд╖реНрдкрд╛рджрди рдпреЛрдЧреНрдп рдмрдирд╛рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рдирд╣реАрдВ рд╣реИрдВ, рдФрд░ рдРрд╕рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдЬрд░реВрд░рдд рд╕реЗ рдмреЗрдЦрдмрд░ рдмрд░реНрдЦрд╛рд╕реНрддрдЧреАред рдЕрд╕реНрддрд┐рддреНрд╡ рдореЗрдВ рдмрд╣реБрдд рдЕрдзрд┐рдХ рд╣рд░ рджреВрд╕рд░реА рдирд┐рд░реНрдорд╛рдг рдкреНрд░рдгрд╛рд▓реА рди рдХреЗрд╡рд▓ рдПрдХ рд╕рд╛рдВрдЦреНрдпрд┐рдХреАрдп рд░реВрдк рд╕реЗ рдЬреБрдбрд╝реЗ рдирд┐рд╖реНрдкрд╛рджрди рдпреЛрдЧреНрдп рдХрд╛ рдирд┐рд░реНрдорд╛рдг рдХрд░реЗрдЧреА, рдпрд╣ рдирд┐рд░реНрднрд░рддрд╛ рдХреЗ рдЕрдкреНрд░рдпреБрдХреНрдд рднрд╛рдЧреЛрдВ рдХреЛ рдЫреАрди рд▓реЗрдЧреАред рд╕реНрдЯреНрд░рд┐рдкрд┐рдВрдЧ рдирд┐рд░реНрднрд░рддрд╛ рдХрдо рд╕реЗ рдХрдо рдПрдХ рджрд╢рдХ рдХреЗ рд▓рд┐рдП рдПрдХ рдорд╛рдирдХ рд╡рд┐рд╢реЗрд╖рддрд╛ рд░рд╣реА рд╣реИ; рд╕рдВрдХрд▓рдХ рдХреЗ рдЖрд╡рд┐рд╖реНрдХрд╛рд░ рдХреЗ рдмрд╛рдж рд╕реЗ рд╕реНрдерд┐рд░ рд▓рд┐рдВрдХрд┐рдВрдЧред

рд╕рд╣рдордд, рдпрд╣ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдСрдкрд░реЗрдЯрд┐рдВрдЧ рд╕рд┐рд╕реНрдЯрдо рдореЗрдВ рд╕реА # рдХрд╛рд░реНрдпрдХреНрд░рдореЛрдВ рдХреА рд╕реНрдерд┐рддрд┐ рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рд╣реИред
C # рдкреНрд░реЛрдЧреНрд░рд╛рдо рд╣рдореЗрд╢рд╛ рдПрдХ рдкреНрд░рдердо рд╢реНрд░реЗрдгреА рдХрд╛ рдирд╛рдЧрд░рд┐рдХ рдирд╣реАрдВ рдмрди рд╕рдХрддрд╛ рд╣реИредрдХреЗрд╡рд▓ рджреНрд╡рд┐рддреАрдп рд╢реНрд░реЗрдгреА рдХрд╛ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред

рдЗрд╕рдХрд╛ рд╕рдорд╛рдзрд╛рди рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред
TLDR: dotnet publish -r win10-x64 /p:PublishSingleFile=true

рд╡рд┐рд╡рд░рдг:
https://docs.microsoft.com/en-us/dotnet/core/whats-new/dotnet-core-3-0#single -file-execables
https://github.com/dotnet/designs/blob/master/accepted/single-file/design.md

рдЗрд╕рдХрд╛ рд╕рдорд╛рдзрд╛рди рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред
TLDR: dotnet publish -r win10-x64 /p:PublishSingleFile=true

рд╡рд┐рд╡рд░рдг:
https://docs.microsoft.com/en-us/dotnet/core/whats-new/dotnet-core-3-0#single -file-execables
https://github.com/dotnet/designs/blob/master/accepted/single-file/design.md

рдбреЙрдЯрдиреЗрдЯ-рдХреЛрд░ рдХреЗ рдХрд┐рд╕ рд╕рдВрд╕реНрдХрд░рдг рдореЗрдВ рдпрд╣ рд╕реБрд╡рд┐рдзрд╛ рдЬреЛрдбрд╝реА рдЧрдИ рдереА? рдореИрдВ 3.0.100-preview5-011568 рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣рд╛ рд╣реВрдВ рдФрд░ рдореБрдЭреЗ рдпрд╣ рддреНрд░реБрдЯрд┐ рдорд┐рд▓реА рд╣реИ:
error MSB4030: "/p:PublishSingleFile=true" is an invalid value for the "SelfContained" parameter of the "ResolveFrameworkReferences" task. The "SelfContained" parameter is of type "System.Boolean".

LE: рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдпрд╣ рдХрд╛рдо рдХрд░ рд░рд╣рд╛ рд╣реИ, рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдХреЗрд╡рд▓ https://github.com/dotnet/designs/blob/master/accepted/single-file/design.md рдореЗрдВ рдПрдХ рд╡рд╛рдХреНрдпрд╡рд┐рдиреНрдпрд╛рд╕ рддреНрд░реБрдЯрд┐ рд╣реИ рдЬреЛ dotnet publish -r win10-x64 --self-contained /p:PublishSingleFile=true рд╕рд╛рде рдкреНрд░рдХрд╛рд╢рд┐рдд рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рд░рд╛рдЬреНрдпреЛрдВ рдореЗрдВ рд╣реИред --self-contained рдЬреЛрдбрд╝рдиреЗ рдХреЗ рдмрд┐рдирд╛ рд╣реИред

рдереИрдВрдХреНрд╕ @mihaimyh рдореИрдВ рдбрд┐рдЬрд╛рдЗрди рдбреЙрдХ рдореЗрдВ рдЯрд╛рдЗрдкреЛ рдХреЛ рдареАрдХ рдХрд░реВрдВрдЧрд╛ред

рд╣рдореЗрд╢рд╛ рдПрдХрд▓ exe рд╕реНрд╡рдпрдВ рдирд┐рд╣рд┐рдд рд╕реБрд╡рд┐рдзрд╛ рдХреЗ рд▓рд┐рдП zip / unzip рд╕рдорд╛рдзрд╛рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рдЦрд┐рд▓рд╛рдл imред
рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдЕрдЧрд▓реЗ рдореБрджреНрджреЗ рдХрд╛ рдХрд╛рд░рдг рд╣реЛрдЧрд╛ред
рдПрдХрд▓ exe рдлрд╝рд╛рдЗрд▓ рдХрд╛ рдЖрдХрд╛рд░ рдХреИрд╕реЗ рдХрдо рдХрд░реЗрдВ!

рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рд╢реБрд░реВ рд╕реЗ рд╣реА рд╕рдорд╛рди рддрд░реАрдХреЛрдВ рд╕реЗ рдЖрдИрдПрд▓-рдорд░реНрдЬ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред

рдмрд╣рд╕ рдирд╣реАрдВ рд╣реЛрдиреА рдЪрд╛рд╣рд┐рдП, рдпрд╣ рд╕рдордп рдмрд░реНрдмрд╛рдж рд╣реИ, рдХрд┐рд╕реА рдиреЗ рднреА рдЬрд┐рдк рдХреЗ рд▓рд┐рдП рдирд╣реАрдВ рдХрд╣рд╛ / рдкреВрд░реА рдмрд╛рдд рдХреЛ рдЕрдирдЬрд┐рдк рдХрд░ рджрд┐рдпрд╛, рдФрд░ рдлрд┐рд░ рднреА рд╡реЗ рдЗрд╕ рдбрд┐рдЬрд╛рдЗрди рдХреЗ рд╕рд╛рде рдЖрдП рдФрд░ рдЕрдкрдирд╛ рд╕рдордп рдФрд░ рд╣рдорд╛рд░рд╛ рд╕рдордп рдмрд░реНрдмрд╛рдж рдХрд┐рдпрд╛

рд▓реЛрдЧ рдПрдХрд▓ рдирд┐рд╖реНрдкрд╛рджрди рдпреЛрдЧреНрдп рдФрд░ рдПрдУрдЯреА рдХреЗ рд▓рд┐рдП рдкреВрдЫрддреЗ рд╣реИрдВ, рд╣рдорд╛рд░рд╛ рд╕рдордп рдмрд░реНрдмрд╛рдж рдХрд░рдирд╛ рдмрдВрдж рдХрд░реЗрдВ Microsoft

рдореИрдВ рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рдПрдУрдЯреА рдХреЗ рдмрд┐рдирд╛ рдПрдХрд▓-рдлрд╝рд╛рдЗрд▓ рдЪрд╛рд╣рддрд╛ рд╣реВрдВред рдореИрдВ рдЬреЗрдЖрдИрдЯреА рдХреА рдХреНрд╖рдорддрд╛ рдХреЛ рдкрд╕рдВрдж рдХрд░рддрд╛ рд╣реВрдВ рддрд╛рдХрд┐ рдореИрдВ рдкреНрд░рддрд┐рдмрд┐рдВрдм, рдЬреЗрдиреЗрд░рд┐рдХ рдФрд░ рд░рдирдЯрд╛рдЗрдо-рдЬрдирд░реЗрдЯреЗрдб рдХреЛрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХреВрдВред

рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдПрдордПрд╕ рд╕реБрдирдирд╛ рдирд╣реАрдВ рдЪрд╛рд╣рддрд╛, рдареАрдХ рд╣реИ

рд╣рдореЗрд╢рд╛ рдПрдХрд▓ exe рд╕реНрд╡рдпрдВ рдирд┐рд╣рд┐рдд рд╕реБрд╡рд┐рдзрд╛ рдХреЗ рд▓рд┐рдП zip / unzip рд╕рдорд╛рдзрд╛рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рдЦрд┐рд▓рд╛рдл imред
рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдЕрдЧрд▓реЗ рдореБрджреНрджреЗ рдХрд╛ рдХрд╛рд░рдг рд╣реЛрдЧрд╛ред
рдПрдХрд▓ exe рдлрд╝рд╛рдЗрд▓ рдХрд╛ рдЖрдХрд╛рд░ рдХреИрд╕реЗ рдХрдо рдХрд░реЗрдВ!

рдпрдХреАрди рдирд╣реАрдВ рд╣реЛрддрд╛ рдХрд┐ рдореИрдВ рд╕рдордЭ рдЧрдпрд╛ рд╣реВрдВ, рдЬреИрд╕реЗ рдХрд┐ рдЗрд╕рдХрд╛ Zipped рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рд╕рдВрдХреБрдЪрд┐рдд рдерд╛ред рдпрд╛ рдХреНрдпрд╛ рдЖрдк рдирд┐рд░рд░реНрдердХ рдирд┐рд░реНрднрд░рддрд╛рдУрдВ рдХреА рдХрдореА рдФрд░ рдЗрд╕рд▓рд┐рдП рд╕рдВрдкреАрдбрд╝рди рд╕реЗ рдкрд╣рд▓реЗ рдЖрдХрд╛рд░ рдХрдо рдХрд░ рд░рд╣реЗ рд╣реИрдВ?

рдирдХрд╛рд░рд╛рддреНрдордХрддрд╛ рдХреЛ рди рд╕рдордЭрдирд╛ред Ive рддреНрд╡рд░рд┐рдд рдкрд░реАрдХреНрд╖рдг рдХреЗ рдЕрд▓рд╛рд╡рд╛ рдЕрднреА рддрдХ рдЗрд╕рдХрд╛ рдЗрд╕реНрддреЗрдорд╛рд▓ рдирд╣реАрдВ рдХрд┐рдпрд╛ред рд▓реЗрдХрд┐рди рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдПрдХрд▓ рдирд┐рд╖реНрдкрд╛рджрди рдпреЛрдЧреНрдп рд╕реНрдерд┐рддрд┐ рдХреНрд▓рд╛рдЗрдВрдЯ рдХреЗ рд▓рд┐рдП рдПрдХ рдРрдк рдХреЛ рддреИрдирд╛рдд рдХрд░рдиреЗ рдпрд╛ рд╕реАрдПрд▓рдЖрдИ рдЙрдкрдХрд░рдг рдХреЗ рд░реВрдк рдореЗрдВ рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рдХрд╛рдо рдХрд░рддреА рд╣реИред рдЬрд╣рд╛рдВ рдореБрдЭреЗ рд╡рд┐рд╢реНрд╡рд╛рд╕ рд╣реИ рдХрд┐ рдпрд╣ рд╕реБрд╡рд┐рдзрд╛ рдЙрдкрдпреЛрдЧреА рд╣реИред рдЙрд╕ рдХреЗ рдмрд╛рд╣рд░, рджреЗрд╡ рдпрд╛ рдЕрдиреНрдп рд╡рд╛рддрд╛рд╡рд░рдг рдореЗрдВ рдореБрдЭреЗ рдЗрд╕рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧ рдХрд╛ рдорд╛рдорд▓рд╛ рдирд╣реАрдВ рджрд┐рдЦрддрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдЙрдиреНрд╣реЛрдВрдиреЗ рдЬреЛ рдХрд┐рдпрд╛ рд╣реИ рд╡рд╣ рдПрдХ рд╕рдорд╛рдзрд╛рди рдХреЗ рд░реВрдк рдореЗрдВ рдареАрдХ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ ..

@ рд░реВрд╖реА

рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдПрдордПрд╕ рд╕реБрдирдирд╛ рдирд╣реАрдВ рдЪрд╛рд╣рддрд╛, рдареАрдХ рд╣реИ

рдЗрд╕рдХреЗ рд╡рд┐рдкрд░реАрдд, рд╡реЗ рдЙрдкрдпреЛрдЧ рдХреЗ рдорд╛рдорд▓реЛрдВ рдХреА рдПрдХ рд╡рд┐рд╕реНрддреГрдд рд╢реНрд░реГрдВрдЦрд▓рд╛ рдХреЗ рд▓рд┐рдП рдкреВрдЫ рд░рд╣реЗ рд╣реИрдВ рдФрд░ рдПрдХрддреНрд░ рдХрд░ рд░рд╣реЗ рд╣реИрдВ рдЬрд┐рд╕реЗ рдЖрдк рд╕рдВрдмрдВрдзрд┐рдд рдереНрд░реЗрдбреНрд╕ рдореЗрдВ рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВред рдЖрдкрдХреА рд░рд╛рдп рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реИ, рд▓реЗрдХрд┐рди рд╕рдореБрджрд╛рдп рдХреЗ рдЕрдиреНрдп рд▓реЛрдЧреЛрдВ рдХреА рд░рд╛рдп рдЙрддрдиреА рд╣реА рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реИ рдФрд░ рдЖрдкрдХреЛ рдЙрдиреНрд╣реЗрдВ рд╕реБрдирдиреЗ рдХреЗ рд▓рд┐рдП Microsoft рдХрд╛ рдордЬрд╛рдХ рдирд╣реАрдВ рдЙрдбрд╝рд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред

рдЖрдкрдХреЗ рдХрдерди рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЖрдкрдиреЗ рдореБрдЭреЗ Microsoft рдХреЗ рд▓рд┐рдП рдЧрд▓рдд рд╕рдордЭрд╛ рд╣реЛрдЧрд╛ред рдореИрдВ рдЕрдкрдиреЗ рдЬреИрд╕рд╛ рдПрдХ рд╕рд╛рдореБрджрд╛рдпрд┐рдХ рд╕рджрд╕реНрдп рд╣реВрдВ рдЬреЛ рдХрд┐рд╕реА рднреА рдХреНрд╖рдорддрд╛ рдореЗрдВ Microsoft рдХреЗ рд▓рд┐рдП рдирд╣реАрдВ рдмреЛрд▓рддрд╛ред

рд╣рдореЗрд╢рд╛ рдПрдХрд▓ exe рд╕реНрд╡рдпрдВ рдирд┐рд╣рд┐рдд рд╕реБрд╡рд┐рдзрд╛ рдХреЗ рд▓рд┐рдП zip / unzip рд╕рдорд╛рдзрд╛рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рдЦрд┐рд▓рд╛рдл imред
рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдЕрдЧрд▓реЗ рдореБрджреНрджреЗ рдХрд╛ рдХрд╛рд░рдг рд╣реЛрдЧрд╛ред
рдПрдХрд▓ exe рдлрд╝рд╛рдЗрд▓ рдХрд╛ рдЖрдХрд╛рд░ рдХреИрд╕реЗ рдХрдо рдХрд░реЗрдВ!

рдпрдХреАрди рдирд╣реАрдВ рд╣реЛрддрд╛ рдХрд┐ рдореИрдВ рд╕рдордЭ рдЧрдпрд╛ рд╣реВрдВ, рдЬреИрд╕реЗ рдХрд┐ рдЗрд╕рдХрд╛ Zipped рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рд╕рдВрдХреБрдЪрд┐рдд рдерд╛ред рдпрд╛ рдХреНрдпрд╛ рдЖрдк рдирд┐рд░рд░реНрдердХ рдирд┐рд░реНрднрд░рддрд╛рдУрдВ рдХреА рдХрдореА рдФрд░ рдЗрд╕рд▓рд┐рдП рд╕рдВрдкреАрдбрд╝рди рд╕реЗ рдкрд╣рд▓реЗ рдЖрдХрд╛рд░ рдХрдо рдХрд░ рд░рд╣реЗ рд╣реИрдВ?

рдЕрдЧрд░ рдЖрдк WebApi рдпрд╛ MVC рдпрд╛ рдХрдВрд╕реЛрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдПрдХ HelloWorld рд▓рд┐рдЦреЗрдВ! рдЙрд░ рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рдкрддрд╛ рд╣реИ рдХрд┐ рдореЗрд░рд╛ рдХреНрдпрд╛ рдорддрд▓рдм рд╣реИред
рдкреИрдХреНрдб рдлрд╝рд╛рдЗрд▓ рдмрд╣реБрдд рдмрдбрд╝реА рд╣реИред рдпрд╣ рдмрд╣реБрдд рдЕрдзрд┐рдХ рдХреЛрдб рд▓рд╛рддреА рд╣реИ рд▓реЗрдХрд┐рди рдХрднреА рднреА рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдирд╣реАрдВ рд╣реЛрдЧреАред
рдпрджрд┐ IL-Merge рддрд░реАрдХреЗ рдЕрдкреНрд░рдпреБрдХреНрдд рдХреЛрдб рд╢рд╛рдЦрд╛ рдХреЛ рдХрдо рдХрд░ рджреЗрдВрдЧреЗред

рд╣рд╛рдВ, рдореБрдЭреЗ рдпрдХреАрди рд╣реИ рдХрд┐ рдореИрдВрдиреЗ рд╣реИрд▓реЛрд╡рд░реНрд▓реНрдб рдХреЛ рд╕рд╛рдВрддреНрд╡рдирд╛ рджреА рд╣реИ рдФрд░ рд╣рд╛рдВ рдЗрд╕рдХрд╛ 68K рдХреЛ рдпрдХреАрди рд╣реИ
Capture
рдХреЛрдИ рднреА рдЖрддреНрдо рдирд┐рд╣рд┐рдд 67K рдирд╣реАрдВ рдерд╛
рд▓реЗрдХрд┐рди рдЗрд╕рдХреА C # рд╡рд┐рдзрд╛рдирд╕рднрд╛ рдирд╣реАрдВ рд╣реИред рдЕрдЧрд░ рдореБрдЭреЗ рдПрдХ <1K HelloWorld рдЪрд╛рд╣рд┐рдП рдерд╛ рддреЛ c # рдХрд╛ рдЙрдкрдпреЛрдЧ рдХреНрдпреЛрдВ рдХрд░реЗрдВ?
рдмрдбрд╝реЗ рдРрдк рдлреНрд░реЗрдорд╡рд░реНрдХ рдХрд╛ рдЕрдзрд┐рдХ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ, рдЗрд╕рд▓рд┐рдП рдПрдХ рдмрд┐рдВрджреБ рдкрд░ рдлреНрд░реЗрдорд╡рд░реНрдХ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдЕрдзрд┐рдХ рдХрд╕реНрдЯрдо рдХреЛрдб рд╣реИред
рдХреНрдпрд╛ рд╣рдо рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдХреБрдЫ 100K рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЪрд┐рдВрддрд┐рдд рд╣реИрдВ? рдпрджрд┐ рдРрд╕рд╛ рд╣реИ, рддреЛ рдПрдХ рд░реВрдкрд░реЗрдЦрд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рди рдХрд░реЗрдВ рдФрд░ рдЦрд░реЛрдВрдЪ рд╕реЗ рд╕рдм рдХреБрдЫ рд▓рд┐рдЦрдиреЗ рдореЗрдВ рд╕рдордп рд╡реНрдпрддреАрдд рдХрд░реЗрдВ ??
рдореБрдЭреЗ рдпрд╣рд╛рдВ рдХреНрдпрд╛ рд╕рдордЭ рдирд╣реАрдВ рдЖ рд░рд╣рд╛ рд╣реИ?

рд╣рдореЗрд╢рд╛ рдПрдХрд▓ exe рд╕реНрд╡рдпрдВ рдирд┐рд╣рд┐рдд рд╕реБрд╡рд┐рдзрд╛ рдХреЗ рд▓рд┐рдП zip / unzip рд╕рдорд╛рдзрд╛рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рдЦрд┐рд▓рд╛рдл imред
рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдЕрдЧрд▓реЗ рдореБрджреНрджреЗ рдХрд╛ рдХрд╛рд░рдг рд╣реЛрдЧрд╛ред
рдПрдХрд▓ exe рдлрд╝рд╛рдЗрд▓ рдХрд╛ рдЖрдХрд╛рд░ рдХреИрд╕реЗ рдХрдо рдХрд░реЗрдВ!
рдЕрдЧрд░ рдЖрдк WebApi рдпрд╛ MVC рдпрд╛ рдХрдВрд╕реЛрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдПрдХ HelloWorld рд▓рд┐рдЦреЗрдВ! рдЙрд░ рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рдкрддрд╛ рд╣реИ рдХрд┐ рдореЗрд░рд╛ рдХреНрдпрд╛ рдорддрд▓рдм рд╣реИред
рдкреИрдХреНрдб рдлрд╝рд╛рдЗрд▓ рдмрд╣реБрдд рдмрдбрд╝реА рд╣реИред рдпрд╣ рдмрд╣реБрдд рдЕрдзрд┐рдХ рдХреЛрдб рд▓рд╛рддреА рд╣реИ рд▓реЗрдХрд┐рди рдХрднреА рднреА рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдирд╣реАрдВ рд╣реЛрдЧреАред
рдпрджрд┐ IL-Merge рддрд░реАрдХреЗ рдЕрдкреНрд░рдпреБрдХреНрдд рдХреЛрдб рд╢рд╛рдЦрд╛ рдХреЛ рдХрдо рдХрд░ рджреЗрдВрдЧреЗред

@ рдпрд╣рд╛рдВ рджреЛ рдЕрд▓рдЧ рдореБрджреНрджреЗ рд╣реИрдВ:

  • рдРрдк рдХреЗ рд▓рд┐рдП рдХреЛрдб рдХреИрд╕реЗ рдХрдо рдХрд░реЗрдВ?
  • рдРрдк рдХреЛ рд╕рд┐рдВрдЧрд▓ рдлрд╛рдЗрд▓ рдореЗрдВ рдХреИрд╕реЗ рдкреИрдХреЗрдЬ рдХрд░реЗрдВ?

рдХреЛрдб-рдХрдЯреМрддреА рдХреЗ рд▓рд┐рдП, рдЖрдЧреЗ рдХрдИ рддрдХрдиреАрдХреЗрдВ рд╣реИрдВ

  • рдорд░реНрдЬрд┐рдВрдЧ IL: рдпрд╣ рд╕рднреА рдРрдкреНрд╕ рдХреЗ рд▓рд┐рдП рдирд╣реАрдВ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдореЗрдВ рдЕрд╕реЗрдВрдмрд▓реА рдкрд╣рдЪрд╛рди рдЦреЛ рджреЗрддрд╛ рд╣реИред рдпрд╣ рдореМрдЬреВрджрд╛ рдПрдХрд▓-рдирд┐рд░реНрдЧрдорди рдХрд╛рд░реНрдп рдХреЗ рд▓рд┐рдП рдПрдХ рд▓рдХреНрд╖реНрдп рдирд╣реАрдВ рд╣реИред
  • рдЕрдкреНрд░рдпреБрдХреНрдд рдЖрдИрдПрд▓ рдХреЛ рдЯреНрд░рд┐рдо рдХрд░рдирд╛: ILLinker рдХрд╛ рдЙрджреНрджреЗрд╢реНрдп рдЕрдкреНрд░рдпреБрдХреНрдд рдЖрдИрдПрд▓ рдХреЛ рдЯреНрд░рд┐рдо рдХрд░рдирд╛ рд╣реИред рдпрд╣ рд╕реБрд╡рд┐рдзрд╛ рдбреЙрдЯрдиреЗрдЯ рдПрд╕рдбреАрдХреЗ ( PublishTrimmed рд╕рдВрдкрддреНрддрд┐) рдореЗрдВ рдПрдХреАрдХреГрдд рд╣реИ, рдФрд░ ILLinker рдореЗрдВ рдЕрдзрд┐рдХ рдЕрдиреБрдХреВрд▓рди рд╡рд┐рдХрд╛рд╕ рдХреЗ рдЕрдзреАрди рд╣реИрдВред
  • рдЬрд╝рд┐рдк / рдЕрдирдЬрд╝рд┐рдк: рдбреЙрдЯрдиреЗрдЯ рдкреНрд░рдХрд╛рд╢рди рд╡рд░реНрддрдорд╛рди рдореЗрдВ рдкреНрд░рдХрд╛рд╢рд┐рдд рдПрдХрд▓ рдлрд╝рд╛рдЗрд▓ рдХреЛ рдЬрд╝рд┐рдк рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдпрд╣ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред

рдРрдк рдХреЛ рд╕рд┐рдВрдЧрд▓ рдлрд╛рдЗрд▓ рдореЗрдВ рдХреИрд╕реЗ рдкреИрдХреЗрдЬ рдХрд░реЗрдВ?
рдбреЙрдЯрдиреЗрдЯ рдкреНрд░рдХрд╛рд╢рди рдПрдХрд▓ рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдкреНрд░рдХрд╛рд╢рди рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддрд╛ рд╣реИ - рдкреНрд░рдХрд╛рд╢рд┐рдд рдлрд╝рд╛рдЗрд▓ рдЙрддрдиреА рд╣реА рдмрдбрд╝реА рд╣реЛрдЧреА рдЬрд┐рддрдиреА рдХрд┐ рдРрдк рдЕрдиреНрдпрдерд╛ рд╣реЛрдЧреАред

рдЬрдирд░реЗрдЯрд┐рдВрдЧ рдХреЛрдб рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ:

  • рд╡рд░реНрддрдорд╛рди рдореЗрдВ рджреЗрд╢реА рдХреЛрдб рддреИрдпрд╛рд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рдорд░реНрдерди рд░реЗрдбреА-рдЯреВ-рд░рди рдХрдВрдкрд╛рдЗрд▓рд░ ( PublishReadyToRun рд╕рдВрдкрддреНрддрд┐) рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рд╣реИред
  • рдПрдУрдЯреА рд╕рдВрдХрд▓рди рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдкреНрд░рдХрд╛рд╢рди рдорд╣рд╛рди рд╣реИ (

рд╣рд╛рдВ, рдореБрдЭреЗ рдпрдХреАрди рд╣реИ рдХрд┐ рдореИрдВрдиреЗ рд╣реИрд▓реЛрд╡рд░реНрд▓реНрдб рдХреЛ рд╕рд╛рдВрддреНрд╡рдирд╛ рджреА рд╣реИ рдФрд░ рд╣рд╛рдВ рдЗрд╕рдХрд╛ 68K рдХреЛ рдпрдХреАрди рд╣реИ
Capture
рдХреЛрдИ рднреА рдЖрддреНрдо рдирд┐рд╣рд┐рдд 67K рдирд╣реАрдВ рдерд╛
рд▓реЗрдХрд┐рди рдЗрд╕рдХреА C # рд╡рд┐рдзрд╛рдирд╕рднрд╛ рдирд╣реАрдВ рд╣реИред рдЕрдЧрд░ рдореБрдЭреЗ рдПрдХ <1K HelloWorld рдЪрд╛рд╣рд┐рдП рдерд╛ рддреЛ c # рдХрд╛ рдЙрдкрдпреЛрдЧ рдХреНрдпреЛрдВ рдХрд░реЗрдВ?
рдмрдбрд╝реЗ рдРрдк рдлреНрд░реЗрдорд╡рд░реНрдХ рдХрд╛ рдЕрдзрд┐рдХ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ, рдЗрд╕рд▓рд┐рдП рдПрдХ рдмрд┐рдВрджреБ рдкрд░ рдлреНрд░реЗрдорд╡рд░реНрдХ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдЕрдзрд┐рдХ рдХрд╕реНрдЯрдо рдХреЛрдб рд╣реИред
рдХреНрдпрд╛ рд╣рдо рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдХреБрдЫ 100K рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЪрд┐рдВрддрд┐рдд рд╣реИрдВ? рдпрджрд┐ рдРрд╕рд╛ рд╣реИ, рддреЛ рдПрдХ рд░реВрдкрд░реЗрдЦрд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рди рдХрд░реЗрдВ рдФрд░ рдЦрд░реЛрдВрдЪ рд╕реЗ рд╕рдм рдХреБрдЫ рд▓рд┐рдЦрдиреЗ рдореЗрдВ рд╕рдордп рд╡реНрдпрддреАрдд рдХрд░реЗрдВ ??
рдореБрдЭреЗ рдпрд╣рд╛рдВ рдХреНрдпрд╛ рд╕рдордЭ рдирд╣реАрдВ рдЖ рд░рд╣рд╛ рд╣реИ?

рдЦреЗрдж рдХреЗ рд░реВрдк рдореЗрдВ рдЙрд░ img рджрд┐рдЦрд╛рдпрд╛ рдЧрдпрд╛ рд╣реИ, рд╕реНрд╡рдпрдВ contianed.Thats 68626KB рдХреЗ рд╕рд╛рде, рдЗрд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ 68mb = 68KK, рди рдХреЗрд╡рд▓ 68K !!!
рд╣рдореЗрдВ <1kb рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИ (рд╕реНрд╡рдпрдВ рдХреЗ рд╕рд╛рде рдпрд╣ рдЕрд╕рдВрднрд╡ рд╣реИ), <3000KB рдареАрдХ рд╣реИ, рд╕реНрд╡реАрдХрд╛рд░ рдХрд░реЗрдВред
рд▓реЗрдХрд┐рди 68mb рдЬреНрдпрд╛рджрд╛ 30X + рд╣реИ
рдпреВ рд╡реЛрдВрдЯ рд╣рдореЗрд╢рд╛ рд╕рд┐рд░реНрдл рдПрдХ рд╣реИрд▓реЛрд╡рд░реНрд▓реНрдб рдкреНрд░реЛрдЧреНрд░рд╛рдо рд▓рд┐рдЦреЗрдВ !!!

рдХреНрд╖рдорд╛рдпрд╛рдЪрдирд╛, рджреЗрд░ рд░рд╛рдд рдЧрд▓рддреА K рдХреЗ рд╕рд╛рде
рдЕрддрд┐рд░рд┐рдХреНрдд рд╕реНрдкрд╖реНрдЯреАрдХрд░рдг / рдЬрд╛рдирдХрд╛рд░реА рд╕реНрд╡рд░реВрдк-рд╢реНрд░реАрдзрд░ рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рдж, рдХреБрдЫ рдирдП рд╕реНрд╡рд┐рдЪ, рдЬрд┐рдирдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдореБрдЭреЗ рдЬрд╛рдирдХрд╛рд░реА рдирд╣реАрдВ рдереАред
рдмрд╕ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рд╕реНрд╡рд┐рдЪ рдХреЗ рд╕рд╛рде 3.preview 6 рдХреЗ рд╕рд╛рде рдХреА рдХреЛрд╢рд┐рд╢ рдХреА

рдбреЙрдЯрдиреЗрдЯ рдкрдмреНрд▓рд┐рд╢ -r RID / p: PublishTrimmed = true / p: рдкрдмреНрд▓рд┐рд╢рд┐рдВрдЧрд╕рд╛рдЗрд▓рдлрд╛рдЗрд▓ = рд╕рдЪ
рдФрд░ рдЕрдм 29,000K рддрдХ рдиреАрдЪреЗ

рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рд╕рднреА рдРрдк рд╣реИрд▓реЛ рд╡рд░реНрд▓реНрдб рдирд╣реАрдВ рд╣реЛрдВрдЧреЗ, рд▓реЗрдХрд┐рди C # Core SelfContain App рдХреЗ рд▓рд┐рдП, рдЬрд┐рд╕рдореЗрдВ рд░рдирдЯрд╛рдЗрдо рднреА рд╢рд╛рдорд┐рд▓ рд╣реИ ... рд╡реНрдпрдХреНрддрд┐рдЧрдд рд░реВрдк рд╕реЗ Im рдХреЛ рдЪрд┐рдВрддрд╛ рдирд╣реАрдВ рд╣реИред рдпрдХреАрди рд╣реИ рдХрд┐ рдЕрдЧрд░ рдореИрдВ рдЕрдкрдиреЗ рд▓реЗрдЦрди рдПрдХ рдЫреЛрдЯреЗ рд╕реЗ рд╕рд╛рдВрддреНрд╡рдирд╛ рдЙрдкрдХрд░рдг рдпрд╣ 3K рд╣реИ рдЕрдЪреНрдЫрд╛ рд╣реЛрдЧрд╛ред рд▓реЗрдХрд┐рди рдкрд╣рд▓реА рдЬрдЧрд╣ рдореЗрдВ рдЗрд╕рдХреЗ рд▓рд┐рдП C # рдХрд╛ рдЙрдкрдпреЛрдЧ рдХреНрдпреЛрдВ рдХрд░реЗрдВ?
рджрд┐рд▓рдЪрд╕реНрдк рдЪрд░реНрдЪрд╛ рд╣рд╛рд▓рд╛рдВрдХрд┐ рджреЛрд╕реНрддреЛрдВ!

image
Capture

30mb LOL, рдореБрдЭреЗ рдХреЙрд▓ рдХрд░реЗрдВ рдЬрдм рдпрд╣ 1-3mb рдЬреИрд╕рд╛ рдХреБрдЫ рд╣реЛрдЧрд╛, рд░рдирдЯрд╛рдЗрдо рдмреНрд▓реЛрдЯ рд╕реЗ рднрд░рд╛ рд╣реЛрддрд╛ рд╣реИ, GO рдХреЛ рдЪреЗрдХ рдХрд░реЗрдВ, рд▓реЛрдЧ рддрд░рдВрдЧ рдореЗрдВ рдорд╛рдЗрдЧреНрд░реЗрдЯ рдХрд░рддреЗ рд╣реИрдВ

https://www.jetbrains.com/lp/devecosystem-2019/

рдпрд╣рд╛рдВ рддрдХ тАЛтАЛрдХрд┐ рдХреЛрдЯрд▓рд┐рди рдХреЛ рднреА рд╢реЗрдпрд░ рдорд┐рд▓рдирд╛ рд╢реБрд░реВ рд╣реЛ рдЬрд╛рддрд╛ рд╣реИ, рдФрд░ рдХреЛрдЯрд▓рд┐рди рдореВрд▓ рдирд┐рд╡рд╛рд╕реА рдХреЗ рд╕рд╛рде рд╢рд░реНрдо рдХреА рдмрд╛рдд рд╣реИ

рдФрд░ рд╕реНрд╡рд┐рдлреНрдЯ рд╡рд┐рдВрдбреЛрдЬрд╝ рдкрд░ рдЖ рд░рд╣рд╛ рд╣реИ https://forums.swift.org/t/swift-win32-programming/20686

рддреЛ рдпрд╣рд╛рдБ рдХреБрдЫ рд╕реБрдЭрд╛рд╡ рд╣реИрдВ:

  • рдкреНрд░рддрд┐рдмрд┐рдВрдм рд╣рдЯрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рд╡рд┐рдХрд▓реНрдк рдЬреЛрдбрд╝реЗрдВ
  • JIT рд╕рд╛рдорд╛рди рд╣рдЯрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рд╡рд┐рдХрд▓реНрдк рдЬреЛрдбрд╝реЗрдВ
  • рдмреЗрд╣рддрд░ C # рдХреЛрдб рдХрд╛ рдЕрдиреБрдХреВрд▓рди рдХрд░реЗрдВ рддрд╛рдХрд┐ рдЖрдк JIT рдкрд░ рднрд░реЛрд╕рд╛ рди рдХрд░реЗрдВ

30mb LOL, рдореБрдЭреЗ рдХреЙрд▓ рдХрд░реЗрдВ рдЬрдм рдпрд╣ 1-3mb рдЬреИрд╕рд╛ рдХреБрдЫ рд╣реЛрдЧрд╛, рд░рдирдЯрд╛рдЗрдо рдмреНрд▓реЛрдЯ рд╕реЗ рднрд░рд╛ рд╣реЛрддрд╛ рд╣реИ, GO рдХреЛ рдЪреЗрдХ рдХрд░реЗрдВ, рд▓реЛрдЧ рддрд░рдВрдЧ рдореЗрдВ рдорд╛рдЗрдЧреНрд░реЗрдЯ рдХрд░рддреЗ рд╣реИрдВ

https://www.jetbrains.com/lp/devecosystem-2019/

рдпрд╣рд╛рдВ рддрдХ тАЛтАЛрдХрд┐ рдХреЛрдЯрд▓рд┐рди рдХреЛ рднреА рд╢реЗрдпрд░ рдорд┐рд▓рдирд╛ рд╢реБрд░реВ рд╣реЛ рдЬрд╛рддрд╛ рд╣реИ, рдФрд░ рдХреЛрдЯрд▓рд┐рди рдореВрд▓ рдирд┐рд╡рд╛рд╕реА рдХреЗ рд╕рд╛рде рд╢рд░реНрдо рдХреА рдмрд╛рдд рд╣реИ

рдФрд░ рд╕реНрд╡рд┐рдлреНрдЯ рд╡рд┐рдВрдбреЛрдЬрд╝ рдкрд░ рдЖ рд░рд╣рд╛ рд╣реИ https://forums.swift.org/t/swift-win32-programming/20686

рддреЛ рдпрд╣рд╛рдБ рдХреБрдЫ рд╕реБрдЭрд╛рд╡ рд╣реИрдВ:

  • рдкреНрд░рддрд┐рдмрд┐рдВрдм рд╣рдЯрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рд╡рд┐рдХрд▓реНрдк рдЬреЛрдбрд╝реЗрдВ
  • JIT рд╕рд╛рдорд╛рди рд╣рдЯрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рд╡рд┐рдХрд▓реНрдк рдЬреЛрдбрд╝реЗрдВ
  • рдмреЗрд╣рддрд░ C # рдХреЛрдб рдХрд╛ рдЕрдиреБрдХреВрд▓рди рдХрд░реЗрдВ рддрд╛рдХрд┐ рдЖрдк JIT рдкрд░ рднрд░реЛрд╕рд╛ рди рдХрд░реЗрдВ

рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдЙрдЪрд┐рдд рдирд╣реАрдВ рд╣реИред .NET рдХреЛ рд╕рдмрд╕реЗ рдЫреЛрдЯреА рд╕рд┐рдВрдЧрд▓ рдлрд╛рдЗрд▓ рдХрдВрд╕реЛрд▓ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЗ рдирд┐рд░реНрдорд╛рдг рдХреЗ рд▓рд┐рдП рдирд╣реАрдВ рдмрдирд╛рдпрд╛ рдЧрдпрд╛ рдерд╛ред рд╣рдо рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ Asp.Net рд╡реЗрдмрд╕рд╛рдЗрдЯреЛрдВ рдФрд░ рдПрдкрд┐рд╕ рдХреЗ рд▓рд┐рдП рдХрд░рддреЗ рд╣реИрдВред рдЗрд╕рд▓рд┐рдП, рдврд╛рдВрдЪрд╛ рдЕрдкрдиреЗ рдЖрдк рдореЗрдВ рдЯрди рдЯрди рдХреЗ рдЕрддрд┐рд░рд┐рдХреНрдд рд╕реБрд╡рд┐рдзрд╛рдУрдВ рдХреЗ рд╕рд╛рде рд▓рд╛рддрд╛ рд╣реИ рдЬрд┐рд╕рдореЗрдВ рдЖрдк рдирдЧреЗрдЯ рдкреИрдХреЗрдЬ рд╢рд╛рдорд┐рд▓ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдореИрдВ рд╕реЛрдЪ рднреА рдирд╣реАрдВ рд╕рдХрддрд╛ рдХрд┐ рдЕрдЧрд░ рдХреЛрдИ рд╡реЗрдм рдПрдкреНрд▓рд┐рдХреЗрд╢рди 50 рдпрд╛ рдХрдИ рд╕реИрдХрдбрд╝реЛрдВ рдореЗрдЧрд╛рдмрд╛рдЗрдЯ рдЖрдХрд╛рд░ рдХрд╛ рд╣реИ рддреЛ рдЪрд┐рдВрддрд╛ рдХрд╛ рд╡рд┐рд╖рдп рд╣реИред рдкреНрд░рд╛рдердорд┐рдХ рдЪрд┐рдВрддрд╛ рдЧрддрд┐, рд╕реНрдореГрддрд┐ рдЙрдкрдпреЛрдЧ рдФрд░ рджреАрд░реНрдШрдХрд╛рд▓рд┐рдХ рд╕реНрдерд┐рд░рддрд╛ рдореЗрдВ рд╣реИред рд╕рд░реНрд╡рд░ рдкрд░ рдЖрдХрд╛рд░ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХреМрди рдкрд░рд╡рд╛рд╣ рдХрд░рддрд╛ рд╣реИред

рдпрджрд┐ рдЖрдкрдХрд╛ рдПрдХрдорд╛рддреНрд░ рдЗрд░рд╛рджрд╛ рдЫреЛрдЯреЗ рдПрдХрд▓ рдПрдордмреА рдЖрдХрд╛рд░ рдХреЗ рдХрдВрд╕реЛрд▓ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХрд╛ рдирд┐рд░реНрдорд╛рдг рдХрд░рдирд╛ рд╣реИ, рддреЛ рдиреМрдХрд░реА рдХреЗ рд▓рд┐рдП рд╕рд╣реА рдЙрдкрдХрд░рдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдХреНрдпреЛрдВ рди рдХрд░реЗрдВред рд╢рд┐рдХрд╛рдпрдд рдХрд░рдиреЗ рдХреЗ рдмрдЬрд╛рдп рдХрд┐ рдПрдХ рдПрдХрд▓ рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдкреИрдХ рдХрд┐рдП рдЧрдП рдкреВрд░реНрдг рд░реБрдкрд░реЗрдЦрд╛ рдХреЗ рд╕рд╛рде рдПрдХ рдЕрдиреБрдкреНрд░рдпреЛрдЧ рдПрдХ "рд╣реИрд▓реЛ рджреБрдирд┐рдпрд╛" рдХреЗ рд▓рд┐рдП рднреА рдЖрдХрд╛рд░ рдореЗрдВ рдХрдИ рджрд╕рд┐рдпреЛрдВ рдореЗрдЧрд╛рдмрд╛рдЗрдЯ рд╣реИ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП рд░рд╕реНрдЯ рдХреЗ рд╕рд╛рде рдХреНрдпреЛрдВ рдирд╣реАрдВ?

Microsoft рдЕрдкрдиреА рд╢реБрд░реБрдЖрдд рд╕реЗ рд▓реЗрдХрд░ рдЕрднреА рддрдХ рдФрд░ рдкрд┐рдЫрд▓реЗ рдХреБрдЫ рд╡рд░реНрд╖реЛрдВ рдореЗрдВ .NET рдХреЗ рд╕рд╛рде рдмрд╣реБрдд рдЕрдЪреНрдЫрд╛ рдХрд╛рдо рдХрд░ рд░рд╣рд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдЗрд╕рдХреЗ рд▓рд┐рдП рдЖрдкрдХреЛ рдзрдиреНрдпрд╡рд╛рджред

рдРрд╕реА рдЧреИрд░-рд╕рдордЭ, рдЭреВрда рдФрд░ рджрдХреНрд╖рддрд╛ рдХреА рднрд╛рд╡рдирд╛ рдХреА рдХрдореА рдХрд╛ рдХреНрдпрд╛ рдЬрд╡рд╛рдм рджреЗрдВ?

рдЖрдк рдпрд╣ рдорд╣рд╕реВрд╕ рдХрд░рдиреЗ рдореЗрдВ рд╡рд┐рдлрд▓ рд░рд╣рддреЗ рд╣реИрдВ рдХрд┐ .net рдХреЛрд░ рджрд┐рд╢рд╛ рдХрд┐рддрдиреА рдЧрд▓рдд рдереА, рдФрд░ рдХреЗрд╡рд▓ рд╣рд╛рд▓ рд╣реА рдореЗрдВ рдЙрдиреНрд╣реЛрдВрдиреЗ рд╡рд┐рддрд░рдг / IL рдорд░реНрдЬ / AOT рдкрд░ рдХрд╛рдо рдХрд░рдХреЗ рдЗрд╕реЗ рдорд╣рд╕реВрд╕ рдХрд░рдирд╛ рд╢реБрд░реВ рдХрд┐рдпрд╛

рдФрд░ рдЕрдм рд╡реЗрдм-рдЕрд╕реЗрдВрдмрд▓реА рд╡реИрдЧрди рдкрд░ рдЬрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рд╡реЗ рдирд╣реАрдВ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдХреНрдпреЛрдВрдХрд┐ .net рд░рдирдЯрд╛рдЗрдо рдЗрддрдирд╛ рдмрдбрд╝рд╛ рдмреНрд▓реЛрдЯ рд╣реИ рдХрд┐ рд╡реЗ рд╕рднреНрдп рдЖрдХрд╛рд░ рдХреА рдлрд╛рдЗрд▓реЛрдВ рдХреЛ рддреИрдирд╛рдд рдХрд░рдиреЗ рдореЗрдВ рдЕрд╕рдорд░реНрде рд╣реИрдВ

рдФрд░ рдЖрдк рдЕрднреА рднреА "рдХреМрди рд╕рд░реНрд╡рд░ рдкрд░ рдЖрдХрд╛рд░ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдкрд░рд╡рд╛рд╣ рдХрд░рддрд╛ рд╣реИ" рдХреЗ рд╕рд╛рде рдлрдВрд╕ рдЧрдпрд╛ рд╣реИ, рдЗрд╕ рддрд░рд╣ рдХреА рд╕реЛрдЪ рдиреЗ "рдЖрдзреБрдирд┐рдХ рдорд╛рдирд╛ рдЬрд╛рддрд╛ рд╣реИ" рдмрдирд╛рдпрд╛ рд╣реИред рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдкреБрд░рд╛рдиреЗ рдФрд░ рдЕрдкреНрд░рд╛рд╕рдВрдЧрд┐рдХ рддрдХрдиреАрдХреА рд╕реНрдЯреИрдХ рдореЗрдВ .net рдХреЛрд░

Microsoft .net рдХреЗ рд╕рд╛рде рдмрд╣реБрдд рдЕрдЪреНрдЫрд╛ рдХрд╛рдо рдирд╣реАрдВ рдХрд░ рд░рд╣рд╛ рд╣реИ, рд╡реЗ рдЕрд╕рдлрд▓ рд╣реЛ рдЧрдП рдХреНрдпреЛрдВрдХрд┐ рд╡реЗ рдкреБрд░рд╛рдиреЗ рд▓реЛрдЧреЛрдВ рдХреЛ .net рдлреНрд░реЗрдорд╡рд░реНрдХ рд╕рдВрдЧрддрддрд╛ рдХреЗ рд▓рд┐рдП рдЦреБрд╢ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рдереЗ, рдпрд╣ рдЙрдирдХреА рдЧрд▓рддреА рдореЗрдВ рд╕реЗ рдПрдХ рдерд╛ред

рдХреНрд╖рдорд╛ рдХрд░реЗрдВ рдЕрдЧрд░ рдореИрдВ рдЕрд╕рднреНрдп рд▓рдЧрддрд╛ рд╣реВрдВ рд▓реЗрдХрд┐рди рдХрднреА-рдХрднреА рдЖрдкрдХреЛ рдмрджрд▓рд╛рд╡ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ

рдорд╛рдл рдХрд░рдирд╛, рдЕрдЧрд░ рдореИрдВ рдЕрд╕рднреНрдп рд▓рдЧрддрд╛ рд╣реВрдВ рд▓реЗрдХрд┐рди

рдЖрдк рдЕрд╢рд┐рд╖реНрдЯ рдзреНрд╡рдирд┐ рдХрд░рддреЗ рд╣реИрдВ, рдЕрд╡рдзрд┐ред рдпрд╣, рдФрд░ рдЖрдкрдХреА рдмрд░реНрдЦрд╛рд╕реНрддрдЧреА рдФрд░ рдирд┐рд╖реНрдХрд░реНрд╖ рдкрд░ рдХреВрджрдирд╛, рдкреНрд░реЗрд░рдХ рд╣реЛрдиреЗ рдХрд╛ рдкреНрд░рднрд╛рд╡ рдирд╣реАрдВ рд╣реИред

рдХреНрд╖рдорд╛рдпрд╛рдЪрдирд╛, рджреЗрд░ рд░рд╛рдд рдЧрд▓рддреА K рдХреЗ рд╕рд╛рде
рдЕрддрд┐рд░рд┐рдХреНрдд рд╕реНрдкрд╖реНрдЯреАрдХрд░рдг / рдЬрд╛рдирдХрд╛рд░реА рд╕реНрд╡рд░реВрдк-рд╢реНрд░реАрдзрд░ рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рдж, рдХреБрдЫ рдирдП рд╕реНрд╡рд┐рдЪ, рдЬрд┐рдирдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдореБрдЭреЗ рдЬрд╛рдирдХрд╛рд░реА рдирд╣реАрдВ рдереАред
рдмрд╕ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рд╕реНрд╡рд┐рдЪ рдХреЗ рд╕рд╛рде 3.preview 6 рдХреЗ рд╕рд╛рде рдХреА рдХреЛрд╢рд┐рд╢ рдХреА

рдбреЙрдЯрдиреЗрдЯ рдкрдмреНрд▓рд┐рд╢ -r RID / p: PublishTrimmed = true / p: рдкрдмреНрд▓рд┐рд╢рд┐рдВрдЧрд╕рд╛рдЗрд▓рдлрд╛рдЗрд▓ = рд╕рдЪ
рдФрд░ рдЕрдм 29,000K рддрдХ рдиреАрдЪреЗ

рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рд╕рднреА рдРрдк рд╣реИрд▓реЛ рд╡рд░реНрд▓реНрдб рдирд╣реАрдВ рд╣реЛрдВрдЧреЗ, рд▓реЗрдХрд┐рди C # Core SelfContain App рдХреЗ рд▓рд┐рдП, рдЬрд┐рд╕рдореЗрдВ рд░рдирдЯрд╛рдЗрдо рднреА рд╢рд╛рдорд┐рд▓ рд╣реИ ... рд╡реНрдпрдХреНрддрд┐рдЧрдд рд░реВрдк рд╕реЗ Im рдХреЛ рдЪрд┐рдВрддрд╛ рдирд╣реАрдВ рд╣реИред рдпрдХреАрди рд╣реИ рдХрд┐ рдЕрдЧрд░ рдореИрдВ рдЕрдкрдиреЗ рд▓реЗрдЦрди рдПрдХ рдЫреЛрдЯреЗ рд╕реЗ рд╕рд╛рдВрддреНрд╡рдирд╛ рдЙрдкрдХрд░рдг рдпрд╣ 3K рд╣реИ рдЕрдЪреНрдЫрд╛ рд╣реЛрдЧрд╛ред рд▓реЗрдХрд┐рди рдкрд╣рд▓реА рдЬрдЧрд╣ рдореЗрдВ рдЗрд╕рдХреЗ рд▓рд┐рдП C # рдХрд╛ рдЙрдкрдпреЛрдЧ рдХреНрдпреЛрдВ рдХрд░реЗрдВ?
рджрд┐рд▓рдЪрд╕реНрдк рдЪрд░реНрдЪрд╛ рд╣рд╛рд▓рд╛рдВрдХрд┐ рджреЛрд╕реНрддреЛрдВ!

image
Capture

рдЖрдзреБрдирд┐рдХ рднрд╛рд╖рд╛ рдХреЗ рд░реВрдк рдореЗрдВ рджреБрдирд┐рдпрд╛ рдХреЛ рдПрдХрдЬреБрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдереЛрдбрд╝реА рдорд╣рддреНрд╡рд╛рдХрд╛рдВрдХреНрд╖рд╛ рдирд╣реАрдВ рд╣реЛрдиреА рдЪрд╛рд╣рд┐рдП?
рдХреНрдпрд╛ рдЖрдк рдЪрд╛рд╣рддреЗ рд╣реИрдВ рдХрд┐ рд╕рднреА рдбреЗрд╡рд▓рдкрд░реНрд╕ C ++ рдХреЗ рд▓рд┐рдП рд╕реА # рдмреИрдХ рд╣реЛрдо рд▓рд┐рдЦреЗрдВ? рдпрд╛ рдЙрдиреНрд╣реЗрдВ рдЧреЛ, рдХреЛрдЯрд▓рд┐рди, рд╕реНрд╡рд┐рдлреНрдЯ рдореЗрдВ рдзрдХреЗрд▓ рджреЗрдВ?
рдмрд╛рдЬрд╛рд░ рдореЗрдВ рд╣рд┐рд╕реНрд╕реЗрджрд╛рд░реА рдФрд░ рдЖрдЧреЗ # рдЧ?

.Net рдХреНрдпреЛрдВрдХрд┐ рдХреНрд░реЙрд╕-рдкреНрд▓реЗрдЯрдлрд╝реЙрд░реНрдо рд▓рд╛рдЧреВ рдирд╣реАрдВ рд╣реЛрддрд╛ рд╣реИ рдорд╣рд╛рди рд╡рд┐рдХрд╛рд╕ рдХреЗ рдЕрд╡рд╕рд░ рдХреЗ рдкрд╣рд▓реЗ 15+ рд╡рд░реНрд╖реЛрдВ рд╕реЗ рдЪреВрдХ рдЧрдПред
рд▓реЗрдХрд┐рди рдЕрдм .net рд╕рд╣реА рддрд░реАрдХреЗ рд╕реЗ рд╡рд╛рдкрд╕ рдЖ рдЧрдпрд╛ рд╣реИред

рд╣рд╛рдБ рдЬреИрд╕рд╛ рдХрд┐ рдореИрдВрдиреЗ Im рд╕реЗ рдкрд╣рд▓реЗ рдЯрд┐рдкреНрдкрдгреА рдХреА рдХрд┐ рдирд┐рдЧреЗрдЯрд┐рд╡рд┐рдЯреА рдХреНрдпреЛрдВ рдирд╣реАрдВ рд╣реИред
рдЕрдЧрд░ рдЖрдк рдлреБрд▓ рдлреНрд░реЗрдорд╡рд░реНрдХ рд╕реЗ рдЖ рд░рд╣реЗ рд╣реИрдВ рддреЛ рдиреЗрдЯ рдХреЛрд░ рдХреБрдЫ рднреА рд╢рд╛рдирджрд╛рд░ рдирд╣реАрдВ рд╣реИред рдФрд░ .Net рдорд╛рдирдХ + рдХреЛрд░ рд╕рдорд╛рдореЗрд▓рди рджреГрд╖реНрдЯрд┐ рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╕рдордЭрджрд╛рд░ рдФрд░ рдкреНрд░рдЧрддрд┐рд╢реАрд▓ рд╣реИред

.NET рдХреЛ GO рдпрд╛ рдХрд┐рд╕реА рдЕрдиреНрдп рднрд╛рд╖рд╛ / рдлреНрд░реЗрдорд╡рд░реНрдХ рд╕реЗ рддреБрд▓рдирд╛ рдХрд░рдирд╛ рд╡реНрдпрд░реНрде рд╣реИред
рд╡реИрд╕реЗ рднреА, рдЗрд╕ рд╡рд┐рд╖рдп рдкрд░ Im рдмрд╛рд╣рд░, рдЬреИрд╕рд╛ рдХрд┐ рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╡реЗ рдЬрд┐рд╕ рд╕рдорд╛рдзрд╛рди рдкрд░ рдХрд╛рдо рдХрд░ рд░рд╣реЗ рд╣реИрдВ рдФрд░ рдПрдХрд▓ .exe рдХреЗ рд▓рд┐рдП рд╕реБрдзрд╛рд░ рдХрд░ рд░рд╣реЗ рд╣реИрдВ, рдЙрд╕рдиреЗ рдХрдИ рд╕рд╛рд▓реЛрдВ рдкрд╣рд▓реЗ рд╕реЗ рдореЗрд░реЗ 'рдкреВрдЫ' рдХреЛ рдХрд╛рдлреА рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рд╣рд▓ рдХрд░ рджрд┐рдпрд╛ рд╣реИ ... рдореЗрд░реЗ рд▓рд┐рдП рдмрд╣реБрдд рдЕрдЪреНрдЫрд╛ рд╣реИ, рдФрд░ рдореЗрд░реА рддрддреНрдХрд╛рд▓ рдЖрд╡рд╢реНрдпрдХрддрд╛рдУрдВ рдХреЗ рдЕрдиреБрд░реВрдк рд╣реИред

рддреЛ рдзрдиреНрдпрд╡рд╛рдж рджреЛрд╕реНрддреЛрдВ рдФрд░ рд▓рдбрд╝рдХрд┐рдпреЛрдВ!

рдмрд╛рд╣рд░

рдореИрдВ рдЗрд╕ рдЖрдЪрд╛рд░ рд╕рдВрд╣рд┐рддрд╛ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╕рднреА рдХреЛ рдпрд╛рдж рджрд┐рд▓рд╛рдирд╛ рдЪрд╛рд╣реВрдВрдЧрд╛ред

рдЕрд╕рд╣рдордд рд╣реЛрдирд╛ рдпрд╛ рдЕрд▓рдЧ-рдЕрд▓рдЧ рд░рд╛рдп рд░рдЦрдирд╛ рдареАрдХ рд╣реИ, рд▓реЗрдХрд┐рди рдХреГрдкрдпрд╛, рд╣рдо рд╕рднреНрдп рд░рд╣реЗрдВ рдФрд░ рдЪрд▓рд┐рдП рдЗрд╕реЗ рддрдХрдиреАрдХреА рдЪрд░реНрдЪрд╛ рдХреЗ рд░реВрдк рдореЗрдВ рд╡реНрдпрдХреНрдд рдХрд░рддреЗ рд╣реИрдВред рдордЬрдмреВрдд рд╢рдмреНрджреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИред
рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рд╡рд┐рдЪрд╛рд░реЛрдВ рдХреЛ рд▓рдХреНрд╖рд┐рдд рдХрд░рдирд╛, рдЖрдкрдХреА рд░рд╛рдп рдХреЗ рд╕рд╛рде рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдЙрдЪрд┐рдд рдЦреЗрд▓ рд╣реИред рдлрд┐рд░ рднреА, рдпрд╣ рдЙрдирдХреЗ рдкреАрдЫреЗ рд▓реЛрдЧреЛрдВ рдкрд░ рд╣рдорд▓рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕реНрд╡реАрдХрд╛рд░реНрдп рдирд╣реАрдВ рд╣реИред рдХреГрдкрдпрд╛ рд╕рднреА рдПрдХ-рджреВрд╕рд░реЗ рдХреЗ рдкреНрд░рддрд┐ рд╕рдореНрдорд╛рдирдЬрдирдХ рд░рд╣реЗрдВ, рд╡рд┐рднрд┐рдиреНрди рд░рд╛рдпреЛрдВ рдХреЛ рд╕реБрдиреЗрдВ рдФрд░ рдордЬрдмреВрдд рдмрдпрд╛рдиреЛрдВ рдФрд░ рдЖрдкрддреНрддрд┐рдЬрдирдХ рдЯрд┐рдкреНрдкрдгрд┐рдпреЛрдВ рд╕реЗ рдкрд░рд╣реЗрдЬ рдХрд░реЗрдВред

рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдореИрдВ рд╣рд░ рдХрд┐рд╕реА рдХреЛ рдЕрдиреНрдп рджреГрд╢реНрдп рдмрд┐рдВрджреБрдУрдВ рдФрд░ рд░рд╛рдп рдХреЗ рд▓рд┐рдП рдЦреБрд▓реЗ рд░рд╣рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд╣рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВред рдирд┐рд░реНрдгрдп рд▓реЗрдиреЗ рд╕реЗ рдкрд╣рд▓реЗ, рджреВрд╕рд░реЗ рдкрдХреНрд╖ рдХреЛ рд╕реБрдирдиреЗ рдХреЗ рд▓рд┐рдП рдЖрдо рддреМрд░ рдкрд░ рдЕрдЪреНрдЫрд╛ рд╣реЛрддрд╛ рд╣реИ - рдЕрдХреНрд╕рд░ рдЗрд╕рдХреЗ рдкреАрдЫреЗ рдПрдХ рдХрд╣рд╛рдиреА рд╣реЛрддреА рд╣реИ рдХрд┐ рдЪреАрдЬреЗрдВ рдЬрд┐рд╕ рддрд░рд╣ рд╕реЗ рд╣реЛрддреА рд╣реИрдВред рд╡рд┐рдЪрд╛рд░реЛрдВ рдФрд░ рд╕рдорд╛рдзрд╛рдиреЛрдВ рдХреЛ рджреЗрдЦрдХрд░ рдЬрдм рдХреЛрдИ рдЬрд╛рдирддрд╛ рд╣реИ рдХрд┐ рд╡реЗ рдЬрд┐рд╕ рддрд░рд╣ рд╕реЗ рд╣реИрдВ рд╡рд╣ рдЖрдо рддреМрд░ рдкрд░ рдЕрдзрд┐рдХ рдЙрддреНрдкрд╛рджрдХ рд╣реИред

рдзрдиреНрдпрд╡рд╛рдж!

рд╣рдореЗрд╢рд╛ рдПрдХрд▓ exe рд╕реНрд╡рдпрдВ рдирд┐рд╣рд┐рдд рд╕реБрд╡рд┐рдзрд╛ рдХреЗ рд▓рд┐рдП zip / unzip рд╕рдорд╛рдзрд╛рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рдЦрд┐рд▓рд╛рдл imред
рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдЕрдЧрд▓реЗ рдореБрджреНрджреЗ рдХрд╛ рдХрд╛рд░рдг рд╣реЛрдЧрд╛ред
рдПрдХрд▓ exe рдлрд╝рд╛рдЗрд▓ рдХрд╛ рдЖрдХрд╛рд░ рдХреИрд╕реЗ рдХрдо рдХрд░реЗрдВ!
рдЕрдЧрд░ рдЖрдк WebApi рдпрд╛ MVC рдпрд╛ рдХрдВрд╕реЛрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдПрдХ HelloWorld рд▓рд┐рдЦреЗрдВ! рдЙрд░ рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рдкрддрд╛ рд╣реИ рдХрд┐ рдореЗрд░рд╛ рдХреНрдпрд╛ рдорддрд▓рдм рд╣реИред
рдкреИрдХреНрдб рдлрд╝рд╛рдЗрд▓ рдмрд╣реБрдд рдмрдбрд╝реА рд╣реИред рдпрд╣ рдмрд╣реБрдд рдЕрдзрд┐рдХ рдХреЛрдб рд▓рд╛рддреА рд╣реИ рд▓реЗрдХрд┐рди рдХрднреА рднреА рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдирд╣реАрдВ рд╣реЛрдЧреАред
рдпрджрд┐ IL-Merge рддрд░реАрдХреЗ рдЕрдкреНрд░рдпреБрдХреНрдд рдХреЛрдб рд╢рд╛рдЦрд╛ рдХреЛ рдХрдо рдХрд░ рджреЗрдВрдЧреЗред

@ рдпрд╣рд╛рдВ рджреЛ рдЕрд▓рдЧ рдореБрджреНрджреЗ рд╣реИрдВ:

  • рдРрдк рдХреЗ рд▓рд┐рдП рдХреЛрдб рдХреИрд╕реЗ рдХрдо рдХрд░реЗрдВ?
  • рдРрдк рдХреЛ рд╕рд┐рдВрдЧрд▓ рдлрд╛рдЗрд▓ рдореЗрдВ рдХреИрд╕реЗ рдкреИрдХреЗрдЬ рдХрд░реЗрдВ?

рдХреЛрдб-рдХрдЯреМрддреА рдХреЗ рд▓рд┐рдП, рдЖрдЧреЗ рдХрдИ рддрдХрдиреАрдХреЗрдВ рд╣реИрдВ

  • рдорд░реНрдЬрд┐рдВрдЧ IL: рдпрд╣ рд╕рднреА рдРрдкреНрд╕ рдХреЗ рд▓рд┐рдП рдирд╣реАрдВ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдореЗрдВ рдЕрд╕реЗрдВрдмрд▓реА рдкрд╣рдЪрд╛рди рдЦреЛ рджреЗрддрд╛ рд╣реИред рдпрд╣ рдореМрдЬреВрджрд╛ рдПрдХрд▓-рдирд┐рд░реНрдЧрдорди рдХрд╛рд░реНрдп рдХреЗ рд▓рд┐рдП рдПрдХ рд▓рдХреНрд╖реНрдп рдирд╣реАрдВ рд╣реИред
  • рдЕрдкреНрд░рдпреБрдХреНрдд рдЖрдИрдПрд▓ рдХреЛ рдЯреНрд░рд┐рдо рдХрд░рдирд╛: ILLinker рдХрд╛ рдЙрджреНрджреЗрд╢реНрдп рдЕрдкреНрд░рдпреБрдХреНрдд рдЖрдИрдПрд▓ рдХреЛ рдЯреНрд░рд┐рдо рдХрд░рдирд╛ рд╣реИред рдпрд╣ рд╕реБрд╡рд┐рдзрд╛ рдбреЙрдЯрдиреЗрдЯ рдПрд╕рдбреАрдХреЗ ( PublishTrimmed рд╕рдВрдкрддреНрддрд┐) рдореЗрдВ рдПрдХреАрдХреГрдд рд╣реИ, рдФрд░ ILLinker рдореЗрдВ рдЕрдзрд┐рдХ рдЕрдиреБрдХреВрд▓рди рд╡рд┐рдХрд╛рд╕ рдХреЗ рдЕрдзреАрди рд╣реИрдВред
  • рдЬрд╝рд┐рдк / рдЕрдирдЬрд╝рд┐рдк: рдбреЙрдЯрдиреЗрдЯ рдкреНрд░рдХрд╛рд╢рди рд╡рд░реНрддрдорд╛рди рдореЗрдВ рдкреНрд░рдХрд╛рд╢рд┐рдд рдПрдХрд▓ рдлрд╝рд╛рдЗрд▓ рдХреЛ рдЬрд╝рд┐рдк рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдпрд╣ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред

рдРрдк рдХреЛ рд╕рд┐рдВрдЧрд▓ рдлрд╛рдЗрд▓ рдореЗрдВ рдХреИрд╕реЗ рдкреИрдХреЗрдЬ рдХрд░реЗрдВ?
рдбреЙрдЯрдиреЗрдЯ рдкреНрд░рдХрд╛рд╢рди рдПрдХрд▓ рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдкреНрд░рдХрд╛рд╢рди рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддрд╛ рд╣реИ - рдкреНрд░рдХрд╛рд╢рд┐рдд рдлрд╝рд╛рдЗрд▓ рдЙрддрдиреА рд╣реА рдмрдбрд╝реА рд╣реЛрдЧреА рдЬрд┐рддрдиреА рдХрд┐ рдРрдк рдЕрдиреНрдпрдерд╛ рд╣реЛрдЧреАред

рдЬрдирд░реЗрдЯрд┐рдВрдЧ рдХреЛрдб рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ:

  • рд╡рд░реНрддрдорд╛рди рдореЗрдВ рджреЗрд╢реА рдХреЛрдб рддреИрдпрд╛рд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рдорд░реНрдерди рд░реЗрдбреА-рдЯреВ-рд░рди рдХрдВрдкрд╛рдЗрд▓рд░ ( PublishReadyToRun рд╕рдВрдкрддреНрддрд┐) рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рд╣реИред
  • рдПрдУрдЯреА рд╕рдВрдХрд▓рди рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдкреНрд░рдХрд╛рд╢рди рдорд╣рд╛рди рд╣реИ (

рдЬреИрд╕рд╛ рдХрд┐ рдбрд╛рдпрдирд╛рдорд┐рдХ рдорд░реНрдЬ рджреЗрд╢реА-рдбреАрдПрд▓рдПрд▓ рдХреЛ рдПрдХ рдирд╛рдо рдкрд╕рдВрдж рд╣реИ: XXX.exe (рдЕрдирд╡рд╛рдВрдЯреЗрдб)ред
рджреЗрд╢реА рдбреАрдПрд▓рдПрд▓рдПрд╕ (рдЕрдирдореИрдиреНрдбреЗрдб) рдлрдВрдХреНрд╢рди-рд▓реЗрд╡рд▓ рд▓рд┐рдВрдХрд┐рдВрдЧ рдХреЛ рд╕рдВрдХрд▓рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХреЗ рд▓рд┐рдП рд╕реНрдереИрддрд┐рдХ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ред

api-ms-win-core-console-l1-1-0.dll
api-ms-win-core-datetime-l1-1-0.dll
api-ms-win-core-debug-l1-1-0.dll
api-ms-win-core-errorhandling-l1-1-0.dll
api-ms-win-core-file-l1-1-0.dll
api-ms-win-core-file-l1-2-0.dll
api-ms-win-core-file-l2-1-0.dll
api-ms-win-core-handle-l1-1-0.dll
api-ms-win-core-heap-l1-1-0.dll
api-ms-win-core-interlocked-l1-1-0.dll
api-ms-win-core-libraryloader-l1-1-0.dll
api-ms-win-core-localization-l1-2-0.dll
api-ms-win-core-memory-l1-1-0.dll
api-ms-win-core-namedpipe-l1-1-0.dll
api-ms-win-core-processenvironment-l1-1-0.dll
api-ms-win-core-processthreads-l1-1-0.dll
api-ms-win-core-processthreads-l1-1-1.dll
api-ms-win-core-profile-l1-1-0.dll
api-ms-win-core-rtlsupport-l1-1-0.dll
api-ms-win-core-string-l1-1-0.dll
api-ms-win-core-synch-l1-1-0.dll
api-ms-win-core-synch-l1-2-0.dll
api-ms-win-core-sysinfo-l1-1-0.dll
api-ms-win-core-timezone-l1-1-0.dll
api-ms-win-core-util-l1-1-0.dll
api-ms-win-crt-conio-l1-1-0.dll
api-ms-win-crt-convert-l1-1-0.dll
api-ms-win-crt-environment-l1-1-0.dll
api-ms-win-crt-filesystem-l1-1-0.dll
api-ms-win-crt-heap-l1-1-0.dll
api-ms-win-crt-locale-l1-1-0.dll
api-ms-win-crt-math-l1-1-0.dll
api-ms-win-crt-multibyte-l1-1-0.dll
api-ms-win-crt-private-l1-1-0.dll
api-ms-win-crt-process-l1-1-0.dll
api-ms-win-crt-runtime-l1-1-0.dll
api-ms-win-crt-stdio-l1-1-0.dll
api-ms-win-crt-string-l1-1-0.dll
api-ms-win-crt-time-l1-1-0.dll
api-ms-win-crt-utility-l1-1-0.dll
aspnetcorev2_inprocess.dll
clrcompression.dll
clretwrc.dll
clrjit.dll
coreclr.dll
dbgshim.dll
dotnet-aspnet-codegenerator-design.dll
hostfxr.dll
hostpolicy.dll
mscordaccore_amd64_amd64_4.6.27317.07.dll
mscordbi.dll
mscorrc.dll
mscorrc.debug.dll
sni.dll
sos.dll
sos_amd64_amd64_4.6.27317.07.dll
ucrtbase.dll
...etc...

рдпрджрд┐ рдЕрдЪреНрдЫрд╛ рдХрд╛рдо рдХрд░рддреЗ рд╣реИрдВ рддреЛ рдкрд░рд┐рдгрд╛рдо 2-3l рд╣реЛрдЧрд╛ред рдЬрдм im рд╕реАрдзреЗ рдЙрди рд╕рднреА рдХреЛ 7zip рдХреЗ рд╕рд╛рде рдкреИрдХ рдХрд░рддрд╛ рд╣реИ, рддреЛ рдЗрд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ 4.85mb.Now рд╣рдореЗрдВ XXX.exe рдорд┐рд▓рддрд╛ рд╣реИ

IL- рдорд░реНрдЬ рдХреЗ рд╕рд╛рде рд╕рдорд╛рди рдлрд╝рдВрдХреНрд╢рди-рд╕реНрддрд░ рд▓рд┐рдВрдХ рд╡рд┐рдХрд╕рд┐рдд рдХрд░реЗрдВред
рдПрдХ рдкреНрд░рдмрдВрдзрд┐рдд DLL рдХреЗ рд▓рд┐рдП рдлрд┐рд░ рд╕реЗ рд╡рд╣реА рдкреБрд░рд╛рдиреА рдЪрд╛рд▓ред
рдЕрдВрддрд┐рдо рдПрдореНрдмреЗрдб рдореЗрдВ DL.exe PE.exe рдЕрдиреБрднрд╛рдЧ (.net рдЕрдиреБрднрд╛рдЧ рдХреЗ рд░реВрдк рдореЗрдВ рдЪрд┐рд╣реНрди) рдХреЗ рд░реВрдк рдореЗрдВ рдкреНрд░рдмрдВрдзрд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ред

рдкреНрд░рддрд┐рдмрд┐рдВрдм рдХреЗ рд▓рд┐рдП, рдкреНрд░рддрд┐рдмрд┐рдВрдм рдкреНрд░рдХрд╛рд░ рдХреЗ рдбреАрдПрд▓рдПрд▓ рдХрд╛ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХрд░реЗрдВред рдореЗрдЯрд╛рдбрд╛рдЯрд╛ рдФрд░ рдкреНрд░рддрд┐рдмрд┐рдВрдм рдХреЗ рдкреНрд░рдХрд╛рд░ (рдлрд╝рдВрдХреНрд╢рди рд╕рд╣рд┐рдд) рдФрд░ рдЙрд╕рдХреЗ рдкреЗрдбрд╝ рдХреЗ рд╕рднреА - рдЖрд╢реНрд░рд┐рдд рдмрдирд╛рдП рд░рдЦреЗрдВред

рдореИрдВ рдорд╛рдлреА рдорд╛рдБрдЧрддрд╛ рд╣реВрдБ, рдореИрдВ рдЗрд╕ рдмрд╛рд░реЗ рдореЗрдВ рдЪрд░реНрдЪрд╛ рдореЗрдВ рднрд╛рдЧ рд▓реЗрдиреЗ рдХреЗ рд▓рд┐рдП рдФрд░ рдЕрдзрд┐рдХ рд╕рдордп рдирд╣реАрдВ рд▓реЗрдирд╛ рдЪрд╛рд╣рддрд╛ред рдХрд┐рд╕реА рднреА рдЕрдиреНрдп рдХреЛ рдПрдХреАрдХреГрдд рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред
рдкрд╣рд▓реЗ рдореБрдЭреЗ рдкрд░рд┐рдгрд╛рдо рдХреА рдЙрдореНрдореАрдж рдереАред рд▓реЗрдХрд┐рди рдЕрдм, рдореИрдВ рд╢рд╛рдпрдж рдЕрдиреНрдп рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рднрд╛рд╖рд╛рдУрдВ рдореЗрд░реА рдЬрд░реВрд░рддреЛрдВ (рд╢рд╛рдпрдж Dlang рд╢рд╛рдпрдж рдЬрд╛рдУ рд╢рд╛рдпрдж Kotlin рд╢рд╛рдпрдж рдирд┐рдо рдпрд╛ рд╢рд╛рдпрдж рдЬрдВрдЧ рд╕рдмрд╕реЗ рдЕрдЪреНрдЫрд╛ рд╣реИ) рдХреЛ рдкреВрд░рд╛ рдХрд░рдиреЗ рдХреЗ рд╡рд┐рдЪрд╛рд░ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред

рдореЗрд░реЗ рд╕рд╛рде рдпрд╣ рдмрд╛рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рджред рдореЗрд░реА рдиреИрдЧрд┐рдВрдЧ рдХреЗ рд▓рд┐рдП рдЦреЗрдж рд╣реИред рдмрд╛рд╣рд░

@sgf рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЖрдкрдиреЗ рдХреБрдЫ рдЕрдЪреНрдЫреЗ рдЕрдВрдХ рдмрдирд╛рдП рд╣реИрдВ рдФрд░ рдореБрдЭреЗ рдкрддрд╛ рд╣реИ рдХрд┐ рдЖрдкрдиреЗ рдЗрд╕ рд╡рд┐рд╖рдп рдкрд░ рд╣рд╕реНрддрд╛рдХреНрд╖рд░ рдХрд░ рджрд┐рдП рд╣реИрдВред рдмрд╕ рдпрд╣ рдХрд╣рдирд╛ рдЪрд╛рд╣рддрд╛ рдерд╛ рдХрд┐ рдореБрдЭреЗ рд╡рд┐рд╢реНрд╡рд╛рд╕ рд╣реИ рдХрд┐ рдЖрдк рдЬреЛ рд╕реБрд╡рд┐рдзрд╛рдПрдБ рдорд╛рдБрдЧ рд░рд╣реЗ рд╣реИрдВ, рд╡реЗ рдЕрдЧрд▓реЗ рджреЛ рд╡рд░реНрд╖реЛрдВ рдореЗрдВ .NET рдХреЛрд░ рдкрд░ рдЖ рдЬрд╛рдПрдБрдЧреАред рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдпрджрд┐ рдЖрдк рдЖрдЬ рдЫреЛрдЯреЗ рдлрд╝рд╛рдЗрд▓ рдЖрдХрд╛рд░ рдкреНрд░рд╛рдкреНрдд рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рддреЛ рдпрд╣ рд╕рдВрднрд╡ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдпрджрд┐ рдЖрдк рдореЛрдиреЛ рдХреЛ рд▓рдХреНрд╖рд┐рдд рдХрд░рддреЗ рд╣реИрдВред

  1. рдореЛрдиреЛ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдлрд╝рд╛рдЗрд▓ рдЖрдХрд╛рд░ рдХреЛ рдХрдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд▓рд┐рдВрдХ рдХреЗ рд╕рд╛рде рдПрдУрдЯреА рд╕рдВрдХрд▓рди рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддрд╛ рд╣реИред рдпрд╣ рдПрдХ рдХрд╛рд░рдг рд╣реИ рдХрд┐ рдореЛрдиреЛ рдХреЛ рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдХреЗ рд▓рд┐рдП рдЪреБрдирд╛ рдЧрдпрд╛ рдерд╛ред рдиреЗрдЯ рд░рдирдЯрд╛рдЗрдо рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрдиред https://www.mono-project.com/docs/advanced/aot/ рдФрд░ рдореЗрд░рд╛ рдорд╛рдирдирд╛ тАЛтАЛрд╣реИ рдХрд┐ рдмреНрд▓реЗрдЬрд╝рд░ рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдореЗрдВ рдПрдХ рд▓рд┐рдВрдХрд░ рд╣реЛ рд╕рдХрддрд╛ рд╣реИред

  2. Microsoft рдиреЗ рдШреЛрд╖рд┐рдд рдХрд┐рдпрд╛ рд╣реИ рдХрд┐ рд╡реЗ рдЕрдкрдиреЗ .NET рд░рдирдЯрд╛рдЗрдореНрд╕ рдХреЛ рдПрдХ "рд╕рднреА рд╢рдХреНрддрд┐рд╢рд╛рд▓реА" рдПрдХ рдореЗрдВ рд╕рдореЗрдХрд┐рдд рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВред рдХреБрдЫ рдЪреАрдЬреЛрдВ рдХреЗ рд▓рд┐рдП рдореЛрдиреЛ рдФрд░ рджреВрд╕рд░реЛрдВ рдХреЗ рд▓рд┐рдП .NET рдХреЛрд░ рдХреЗ рдмрдЬрд╛рдп, рд╡реЗ рдПрдХ рдПрдХрд▓ рд░рдирдЯрд╛рдЗрдо рдЪрд╛рд╣рддреЗ рд╣реИрдВ рдЬреЛ рд╕рднреА рдкрд░рд┐рджреГрд╢реНрдпреЛрдВ рдкрд░ рд╡рд┐рддрд░рд┐рдд рдХрд░ рд╕рдХреЗред рдЗрд╕ рдбрд┐рдлреИрдХреНрдЯреЛ рдХрд╛ рдорддрд▓рдм рд╣реИ рдХрд┐ рдЗрд╕реЗ рдПрдУрдЯреА рдФрд░ рд▓рд┐рдВрдХрд┐рдВрдЧ / рдХреЛрдб рд╕реНрдЯреНрд░рд┐рдкрд┐рдВрдЧ рдЖрджрд┐ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреАред рдЗрд╕рд▓рд┐рдП рдореБрдЭреЗ рдЕрдЧрд▓реЗ рдХреБрдЫ рд╡рд░реНрд╖реЛрдВ рдореЗрдВ рдЙрдореНрдореАрдж рд╣реИ рдХрд┐ рдпрд╛ рддреЛ .NET рдХреЛрд░ рд░рдирдЯрд╛рдЗрдо рдЗрди рд╕реБрд╡рд┐рдзрд╛рдУрдВ рдХреЛ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдпрд╛ рдореЛрдиреЛ рдФрд░ .NET рдХреЛрд░ рд╕реБрд╡рд┐рдзрд╛рдУрдВ рдХреЛ рдПрдХ рдирдП рдореЗрдВ рд╕рдореЗрдХрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдПред рд░рдирдЯрд╛рдЗрдоред

рдЕрдЧрд░ рдХрд┐рд╕реА рдХреЛ рдмреЗрд╣рддрд░ рдкрддрд╛ рд╣реИ, рддреЛ рдХреГрдкрдпрд╛ рдореБрдЭреЗ рд╕реВрдЪрд┐рдд рдХрд░реЗрдВред

+ 2 ┬в

рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╕рдорд╕реНрдпрд╛ рдпрд╣ рд╣реИ рдХрд┐ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдирд┐рд░реНрдгрдп рдмрд┐рдирд╛ рдЕрдзрд┐рдХ рдЬрд╛рдирдХрд╛рд░реА рдХреЗ рдХрд┐рдП рдЬрд╛ рд░рд╣реЗ рд╣реИрдВред рдЗрди рджрд┐рдиреЛрдВ рд╣рд░ рдЬрдЧрд╣ рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд▓реЛрдЧ рдЗрд╕ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХрд░ рд░рд╣реЗ рд╣реИрдВ; рдХрд╛рд░реНрдпрдХреНрд░рдореЛрдВ рдХреА рддреИрдирд╛рддреА рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рдЕрдзрд┐рдХрд╛рдВрд╢ рд▓реЛрдЧреЛрдВ рдХреЗ рдкрд╛рд╕ рдЙрдирдХреА рдЗрдЪреНрдЫрд╛ рд╕реВрдЪреА рдХреЗ рд╢реАрд░реНрд╖ рдкрд░ рд╣реИ, рдФрд░ рдХрдИ рдмреЗрд╣рддрд░ рдПрдУрдЯреА / рддреИрдирд╛рддреА рдХреЗ рд╕рд╛рде рд╕реА # рд╕реЗ рдЕрдиреНрдп рднрд╛рд╖рд╛рдУрдВ рд╕реЗ рджреВрд░ рдЬрд╛ рд░рд╣реЗ рд╣реИрдВ ред рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдПрдХ рдмрд╣реБрдд рд╕реНрдерд╛рдкрд┐рдд рддрдереНрдп рд╣реИ рдЬреЛ рд╕рдореБрджрд╛рдп рдореЗрдВ рд╕рдХреНрд░рд┐рдп рд╣реЛрдиреЗ рдкрд░ рдмрд╣реБрдд рд╕реНрдкрд╖реНрдЯ рд╣реЛ рдЬрд╛рддрд╛ рд╣реИред рдлрд┐рд░ рднреА рдпрд╣ рдирд┐рд░реНрдгрдпреЛрдВ рдХреЛ рдереЛрдбрд╝рд╛ рднреА рдкреНрд░рднрд╛рд╡рд┐рдд рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред

рдмрд╛рдд рдпрд╣ рд╣реИ, рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдХреЛрдИ рдирд╣реАрдВ рдЬрд╛рдирддрд╛ рдХрд┐ рдпрд╣ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдХрд┐рд╕ рд╣рдж рддрдХ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реИред рдореЗрд░реЗ рд▓рд┐рдП рд╡реНрдпрдХреНрддрд┐рдЧрдд рд░реВрдк рд╕реЗ рдпрд╣ рдЕрддреНрдпрдВрдд рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реИ, рдЗрд╕рд▓рд┐рдП рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдореИрдВ рдмрд╣реБрдд рдкрдХреНрд╖рдкрд╛рддреА рд╣реВрдВ, рд▓реЗрдХрд┐рди рдореБрдЭреЗ рдЬреЛ рдзрд╛рд░рдгрд╛ рд╣реИ рд╡рд╣ рдпрд╣ рд╣реИ рдХрд┐ рдХреБрд▓ рдорд┐рд▓рд╛рдХрд░ рдпрд╣ рдкреНрд░рдореБрдЦ рдорд╣рддреНрд╡ рдХрд╛ рд╣реИ рдФрд░ рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдПрдордПрд╕ рдХреЗрд╡рд▓ рдпрд╣ рдзреНрдпрд╛рди рдирд╣реАрдВ рджреЗ рд░рд╣рд╛ рд╣реИ рдХрд┐ рдпрд╣ рдмрд╣реБрдд рдпреЛрдЧреНрдп рд╣реИ, рдЬрд┐рд╕рд╕реЗ рд╣рдо рдмрд╣реБрдд рдкреНрд░рднрд╛рд╡рд┐рдд рд╣реБрдПред рд╡реЗ рдПрдХрд╕рдорд╛рди рдирд┐рд░реНрдгрдп рд▓реЗ рд░рд╣реЗ рд╣реИрдВ рдЬреЛ рдмрджрд▓реЗ рдореЗрдВ рд╣рдореЗрдВ рдПрдХ рдкреВрд░реЗ рдХреЗ рд░реВрдк рдореЗрдВ рдкреНрд░реМрджреНрдпреЛрдЧрд┐рдХреА рдХреЗ рднрд╡рд┐рд╖реНрдп рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЖрд╢реНрд╡рд╕реНрдд рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред

рдореИрдВ @RUSshy рд╕реЗ рд╕рд╣рдордд рд╣реВрдВред CoreRT рдПрдХ рдЕрд╡рд┐рд╢реНрд╡рд╕рдиреАрдп рдкрд░рд┐рдпреЛрдЬрдирд╛ рд╣реИ рдФрд░ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рд╕рд╣реА рджрд┐рд╢рд╛ рдореЗрдВ рдЬрд╛ рд░рд╣реА рд╣реИ, рд▓реЗрдХрд┐рди рдХреБрд▓ рдорд┐рд▓рд╛рдХрд░ рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╕рднреА рдкреНрд░рдпрд╛рд╕ рд╕рд░реНрд╡рд░ / рд╡реЗрдм рдкреНрд░реМрджреНрдпреЛрдЧрд┐рдХрд┐рдпреЛрдВ рдкрд░ рдХреЗрдВрджреНрд░рд┐рдд рд╣реИрдВред рд░рдирдЯрд╛рдЗрдореНрд╕, рдЬреЗрдЯреНрд╕ рдФрд░ рдмрдбрд╝реЗ рдмрд╛рдпрдиреЗрд░рд┐рдЬрд╝ рдЬреИрд╕реА рдЪреАрдЬреЗрдВ рдЙрд╕ рд╕рдВрдмрдВрдз рдореЗрдВ рдЦреБрдж рдХреЗ рд▓рд┐рдП рдмреЛрд▓рддреА рд╣реИрдВред рд╕реЙрдлреНрдЯрд╡реЗрдпрд░ рдХреА рддреИрдирд╛рддреА рдХрд░рдиреЗ рд╡рд╛рд▓рд╛ рдХреЛрдИ рднреА рд╡реНрдпрдХреНрддрд┐ рдЙрди рдЪреАрдЬреЛрдВ рдХреЛ рдирд╣реАрдВ рдЪрд╛рд╣рддрд╛ рд╣реИред

рдХрд╣рд╛ рдЬрд╛ рд░рд╣рд╛ рд╣реИ рдХрд┐ рдореИрдВ рд╡реНрдпрдХреНрддрд┐рдЧрдд рд░реВрдк рд╕реЗ рдЕрднреА рднреА рддрдХрдиреАрдХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣рд╛ рд╣реВрдВ, рд╣рд╛рд▓рд╛рдВрдХрд┐ рдореИрдВ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдХреБрдЫ рдХреНрд╖реЗрддреНрд░реЛрдВ рдореЗрдВ рдЗрд╕рдХреЗ рднрд╡рд┐рд╖реНрдп рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╕рд╛рдВрд╕ рдирд╣реАрдВ рд▓реЗ рд░рд╣рд╛ рд╣реВрдВред

рдореИрдВ рдЗрд╕ рджрд┐рд╢рд╛ рдореЗрдВ рд╕рдореБрджрд╛рдп рд╕реЗ рдЕрдзрд┐рдХ рднрд╛рдЧреАрджрд╛рд░реА рджреЗрдЦрдирд╛ рдЪрд╛рд╣реВрдВрдЧрд╛, рднрд▓реЗ рд╣реА рдпрд╣ рдкрддрд╛ рдЪрд▓реЗ рдХрд┐ рдореИрдВ рд╡реНрдпрдХреНрддрд┐рдЧрдд рд░реВрдк рд╕реЗ рдЗрд╕рдХреА рдЕрдкреЗрдХреНрд╖рд╛ рдХрд░ рд░рд╣рд╛ рд╣реВрдВред рд▓реЗрдХрд┐рди рдЕрдм рддрдХ рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдирд┐рд░реНрдгрдп рдХреЛ рдзреНрдпрд╛рди рдореЗрдВ рд░рдЦрддреЗ рд╣реБрдП рдирд┐рд░реНрдгрдп рдХрд┐рдП рдЬрд╛ рд░рд╣реЗ рд╣реИрдВред рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╕рд░реНрд╡рд░ / рд╡реЗрдм рд╡рд╣ рд╣реИ рдЬреЛ рдкреИрд╕рд╛ рдХрдорд╛рддрд╛ рд╣реИ рдФрд░ рдкреНрд░реЛрдЧреНрд░рд╛рдо рдХреЛ рддреИрдирд╛рдд рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рд▓реЛрдЧ рдПрдХ рдирдЧрдгреНрдп рдЕрд▓реНрдкрд╕рдВрдЦреНрдпрдХ рд╣реИрдВ (рдХрдо рд╕реЗ рдХрдо рдореБрдирд╛рдлреЗ рдХреЗ рдорд╛рдорд▓реЗ рдореЗрдВ), рд▓реЗрдХрд┐рди рдЕрдЧрд░ рдРрд╕рд╛ рд╣реИ рддреЛ рдореИрдВ рдХрдо рд╕реЗ рдХрдо рдпрд╣ рдЬрд╛рдирдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ рдХрд┐ рд╡реЗ рдЕрдкрдиреЗ рдлреИрд╕рд▓реЗ рдХрд┐рд╕ рдЖрдзрд╛рд░ рдкрд░ рд▓реЗ рд░рд╣реЗ рд╣реИрдВ ( рдмрд╣реБрдд рд╕рдВрднрд╛рд╡рдирд╛ рд╣реИ), рдХреНрдпреЛрдВрдХрд┐ рдмрд╛рд╣рд░ рд╕реЗ рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╡реЗ рдПрдХ рд╕рд┐рдХреНрдХрд╛ рдЙрдЫрд╛рд▓ рд░рд╣реЗ рд╣реИрдВред

@ рдПрд▓рди-рдПрдлрдЬреАрдЖрд░

рд▓реЗрдХрд┐рди рдЕрдм рддрдХ рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдирд┐рд░реНрдгрдп рдХреЛ рдзреНрдпрд╛рди рдореЗрдВ рд░рдЦрддреЗ рд╣реБрдП рдирд┐рд░реНрдгрдп рдХрд┐рдП рдЬрд╛ рд░рд╣реЗ рд╣реИрдВред

рдХреНрдпрд╛ рдЖрдкрдХреЗ рдкрд╛рд╕ рд╕рд╛рдЭрд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдРрд╕реЗ рдирд┐рд░реНрдгрдпреЛрдВ рдХреЗ рд╡рд┐рд╢рд┐рд╖реНрдЯ рдЙрджрд╛рд╣рд░рдг рд╣реИрдВ, рдХреНрдпреЛрдВрдХрд┐ рдореИрдВ рдФрд░ рдЕрдзрд┐рдХ рдЬрд╛рдирдиреЗ рдХреЗ рд▓рд┐рдП рдЙрддреНрд╕реБрдХ рд╣реВрдВред

рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдПрдордПрд╕ рд╡рд░реНрддрдорд╛рди рдбреЙрдЯрдиреЗрдЯ рдХреЛрд░ рд░рдирдЯрд╛рдЗрдо рдХреА рдХрдорд┐рдпреЛрдВ рд╕реЗ рдмрд╣реБрдд рдЕрд╡рдЧрдд рд╣реИрдВ рдФрд░ рдЗрд╕реАрд▓рд┐рдП рд╡реЗ рднрд╡рд┐рд╖реНрдп рдореЗрдВ рдореЛрдиреЛ рд░рдирдЯрд╛рдЗрдо рдХреЗ рд╕рд╛рде рдлреАрдЪрд░ рд╕рдорд╛рдирддрд╛ рдХреА рддрд▓рд╛рд╢ рдХрд░реЗрдВрдЧреЗред

рдмрд╕ .net рдХреЛрд░ 3.0.0 рдкреВрд░реНрд╡рд╛рд╡рд▓реЛрдХрди 6 рдХреЗ рд▓рд┐рдП рдЬрд╛рд░реА рдХрд┐рдП рдЧрдП рдиреЛрдЯреНрд╕ рджреЗрдЦреЗрдВ:

рдЖрдЬ, рд╣рдо .NET рдХреЛрд░ 3.0 рдкреВрд░реНрд╡рд╛рд╡рд▓реЛрдХрди 6 рдХреА рдШреЛрд╖рдгрд╛ рдХрд░ рд░рд╣реЗ рд╣реИрдВред рдЗрд╕рдореЗрдВ рдмреЗрд╣рддрд░ рд╕реНрдЯрд╛рд░реНрдЯрдЕрдк рдХреЗ рд▓рд┐рдП рдЕрд╕реЗрдВрдмрд▓рд┐рдпреЛрдВ рдХреЛ рд╕рдВрдХрд▓рд┐рдд рдХрд░рдиреЗ, рд▓рд┐рдВрдХрд░ рдФрд░ рдЖрдХрд╛рд░ рдореЗрдВ рд╕реБрдзрд╛рд░ рдХреЗ рд╕рд╛рде рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдХреЗ рдЕрдиреБрдХреВрд▓рди рдХреЗ рд▓рд┐рдП рдЕрдкрдбреЗрдЯ рд╢рд╛рдорд┐рд▓ рд╣реИрдВред рд╣рдордиреЗ ARM64 рдкрд░ рдЕрд▓реНрдкрд╛рдЗрди рдХреЗ рд▓рд┐рдП рдирдИ рдбреЙрдХрд░ рдЫрд╡рд┐рдпрд╛рдВ рднреА рдЬрд╛рд░реА рдХреА рд╣реИрдВред

рдореБрдЭреЗ рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╡реЗ рдЗрд╕ рдмрд╛рдд рд╕реЗ рдмрд╣реБрдд рдЕрд╡рдЧрдд рд╣реИрдВ рдХрд┐ рдХреБрдЫ рдЖрдХрд╛рд░реЛрдВ рдХреЗ рд▓рд┐рдП рдЖрд╡реЗрджрди рдХрд╛ рдЖрдХрд╛рд░ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реИ - рд╡рд┐рд╢реЗрд╖рдХрд░ рдЕрдм рдорд┐рд╢реНрд░рдг рдореЗрдВ рдмреНрд▓реЗрдЬрд╝рд░ рдХреЗ рд╕рд╛рдеред

@ рдПрд▓рди-рдПрдлрдЬреАрдЖрд░ рд╕рд╣рдордд, рд╡реЗрдм рдлреЛрдХрд╕ рдпрд╣ рд╕реЛрдЪрдХрд░ рдЕрдЬреАрдм рд╣реИ рдХрд┐ рдЖрдИрдЖрдИрдПрд╕ рдХреА рд▓рдЧрднрдЧ 8% рдмрд╛рдЬрд╛рд░ рд╣рд┐рд╕реНрд╕реЗрджрд╛рд░реА рд╣реИ рдФрд░ рдЧрд┐рд░ рд░рд╣реА рд╣реИред ASP.NET рдЕрдкреНрд░рд╛рд╕рдВрдЧрд┐рдХ рд╣реИ, рдФрд░ C # рдпрд╛ рдЗрд╕рдХреЗ рдорд╛рдирдХ рдкреБрд╕реНрддрдХрд╛рд▓рдпреЛрдВ рдореЗрдВ рдХреЛрдИ рд╕реБрдзрд╛рд░ рдХрднреА рднреА рдЗрд╕реЗ рдмрджрд▓рдиреЗ рд╡рд╛рд▓рд╛ рдирд╣реАрдВ рд╣реИред рдХрдВрд╕реЛрд▓ рдПрдкреНрд╕, рд╡рд┐рдВрдбреЛрдЬ рд╕рд░реНрд╡рд┐рд╕реЗрдЬ, рдореЛрдмрд╛рдЗрд▓ рдПрдкреНрд╕, рдФрд░ рдкреАрд╕реА рдЧреЗрдореНрд╕ рджреНрд╡рд╛рд░рд╛ C # рдХрд╛рдпрдо рд░рдЦрд╛ рдЬрд╛ рд░рд╣рд╛ рд╣реИред рдпрд╣ рдПрдХрддрд╛ рдФрд░ рдЬрд╝рд╛рдорд░реАрди рдХреЗ рдЕрд╕реНрддрд┐рддреНрд╡ рдХреЛ рдЬрд╛рд░реА рд░рдЦрддрд╛ рд╣реИред рдпрд╣ рдПрдХ рд╢рд░реНрдо рдХреА рдмрд╛рдд рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ C # рдореЗрдВ рд╡рд┐рдХрд╕рд┐рдд рд╣реЛрдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдмрд╣реБрдд рд╣реА рд╕реБрдЦрдж рднрд╛рд╖рд╛ рд╣реИред рдпрд╣ рд▓рдВрдмреЗ рд╕рдордп рд╕реЗ рдЬрд╛рд╡рд╛ рдбреЗрд╡рд▓рдкрд░ рд╕реЗ рдЖрдиреЗ рд╡рд╛рд▓реА рдЙрдЪреНрдЪ рдкреНрд░рд╢рдВрд╕рд╛ рд╣реИ, рдЬреЛ рдЕрднреА рднреА рд╕реЛрдЪрддреЗ рд╣реИрдВ рдХрд┐ рдорд╛рдЗрдХреНрд░реЛрд╕реЙрдлреНрдЯ рдиреЗ рд╡рд┐рдВрдбреЛрдЬ рдПрдХреНрд╕рдкреА рдХреЗ рд╕рд╛рде рдЕрдкрдиреЗ рдЙрдЪреНрдЪ рдкрд╛рдиреА рдХреЗ рдирд┐рд╢рд╛рди рдХреЛ рдЫреЛрдбрд╝ рджрд┐рдпрд╛ рд╣реИред

рдЬреИрд╕рд╛ рдХрд┐ рдбрд╛рдпрдирд╛рдорд┐рдХ рдорд░реНрдЬ рджреЗрд╢реА-рдбреАрдПрд▓рдПрд▓ рдХреЛ рдПрдХ рдирд╛рдо рдкрд╕рдВрдж рд╣реИ: XXX.exe (рдЕрдирд╡рд╛рдВрдЯреЗрдб)ред
рджреЗрд╢реА рдбреАрдПрд▓рдПрд▓рдПрд╕ (рдЕрдирдореИрдиреНрдбреЗрдб) рдлрдВрдХреНрд╢рди-рд▓реЗрд╡рд▓ рд▓рд┐рдВрдХрд┐рдВрдЧ рдХреЛ рд╕рдВрдХрд▓рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХреЗ рд▓рд┐рдП рд╕реНрдереИрддрд┐рдХ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ред

рдореБрдЭреЗ рдпрдХреАрди рдирд╣реАрдВ рд╣реИ рдХрд┐ рдЖрдк рдЧрддрд┐рд╢реАрд▓ рдорд░реНрдЬ рд╕реЗ рдХреНрдпрд╛ рдорддрд▓рдм рд╣реИ, рд▓реЗрдХрд┐рди рдореВрд▓ рд░реВрдк рд╕реЗ рдореЗрдЬрдмрд╛рди рдХреЗ рд╕рд╛рде рджреЗрд╢реА рдШрдЯрдХреЛрдВ рдХреЛ рдЬреЛрдбрд╝рдиреЗ рдХреА рдпреЛрдЬрдирд╛ рд╣реИред рдХреГрдкрдпрд╛ рдЗрд╕ рдЕрдиреБрднрд╛рдЧ рдХреЛ рджреЗрдЦреЗрдВред

IL- рдорд░реНрдЬ рдХреЗ рд╕рд╛рде рд╕рдорд╛рди рдлрд╝рдВрдХреНрд╢рди-рд╕реНрддрд░ рд▓рд┐рдВрдХ рд╡рд┐рдХрд╕рд┐рдд рдХрд░реЗрдВред
рдкреНрд░рддрд┐рдмрд┐рдВрдм рдХреЗ рд▓рд┐рдП, рдкреНрд░рддрд┐рдмрд┐рдВрдм рдкреНрд░рдХрд╛рд░ рдХреЗ рдбреАрдПрд▓рдПрд▓ рдХрд╛ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХрд░реЗрдВред рдореЗрдЯрд╛рдбрд╛рдЯрд╛ рдФрд░ рдкреНрд░рддрд┐рдмрд┐рдВрдм рдХреЗ рдкреНрд░рдХрд╛рд░ (рдлрд╝рдВрдХреНрд╢рди рд╕рд╣рд┐рдд) рдФрд░ рдЙрд╕рдХреЗ рдкреЗрдбрд╝ рдХреЗ рд╕рднреА - рдЖрд╢реНрд░рд┐рдд рдмрдирд╛рдП рд░рдЦреЗрдВред

рд╣рдордиреЗ рд╡рд┐рдзрд╛рдирд╕рднрд╛рдУрдВ рдХреЛ рдПрдХ рдореЗрдВ рд╡рд┐рд▓рдп рдХрд░рдиреЗ рдХреЗ рд╡рд┐рдХрд▓реНрдк рдкрд░ рдЪрд░реНрдЪрд╛ рдХреА рд╣реИ, рдФрд░ рдЧрддрд┐рд╢реАрд▓ рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдореЗрдЯрд╛-рдбреЗрдЯрд╛ рддрд╛рд▓рд┐рдХрд╛рдУрдВ рдХрд╛ рдкрдХреНрд╖ рд▓рд┐рдпрд╛ рд╣реИред рдпрд╣ рдХрд╛рдлреА рдЖрдХрд╛рд░-рдмрдЪрдд рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИред рд▓реЗрдХрд┐рди рдЗрд╕реЗ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдХреА рд▓рд╛рдЧрдд рдХрд╛рдлреА рдЕрдзрд┐рдХ рд╣реИ - рдирдП рдореЗрдЯрд╛-рдбреЗрдЯрд╛ рд╕рдорд░реНрдерди рдХреЗ рдХрд╛рд░рдг, рдФрд░ рдЗрд╕реЗ рд╕рдВрднрд╛рд▓рдиреЗ рдХреЗ рд▓рд┐рдП рдбрд┐рдмрдЧрд░ / рдкреНрд░реЛрдлрд╛рдЗрд▓рд░ рдЖрджрд┐ рдореЗрдВ рдЖрд╡рд╢реНрдпрдХ рдкрд░рд┐рд╡рд░реНрддрдиред

рджреНрд╡рд┐рдЖрдзрд╛рд░реА рдЖрдХрд╛рд░ рдХреЛ рдХрдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреБрдЫ рдЕрдиреНрдп рд╡рд┐рдХрд▓реНрдк рд╣реИрдВ - рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдЬрдм рд╣рдо рд╕реАрдзреЗ рдПрдХ рдПрдХрд▓-рдлрд╝рд╛рдЗрд▓ рдХреЛ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛрддреЗ рд╣реИрдВ (рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рдирд┐рдХрд╛рд▓рдиреЗ рдХреЗ рдмрд┐рдирд╛), рд╣рдо рдкреНрд░рддреНрдпреЗрдХ DLL рдХреЗ рдкрдХреНрд╖ рдореЗрдВ рд╣рд╕реНрддрд╛рдХреНрд╖рд░ / рдкреНрд░рдорд╛рдг рдкрддреНрд░ рдЫреЛрдбрд╝ рд╕рдХрддреЗ рд╣реИрдВ рдПрдХ рдкреВрд░реЗ рдХреЗ рд░реВрдк рдореЗрдВ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдкрд░ рд╣рд╕реНрддрд╛рдХреНрд╖рд░ред рдпрд╣ рдХрднреА-рдХрднреА рдХреБрдЫ MB рдмрдЪрд╛ рд╕рдХрддрд╛ рд╣реИред

рд▓реЗрдХрд┐рди рдЕрдм рддрдХ рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдирд┐рд░реНрдгрдп рдХреЛ рдзреНрдпрд╛рди рдореЗрдВ рд░рдЦрддреЗ рд╣реБрдП рдирд┐рд░реНрдгрдп рдХрд┐рдП рдЬрд╛ рд░рд╣реЗ рд╣реИрдВред

рдХреНрдпрд╛ рдЖрдкрдХреЗ рдкрд╛рд╕ рд╕рд╛рдЭрд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдРрд╕реЗ рдирд┐рд░реНрдгрдпреЛрдВ рдХреЗ рд╡рд┐рд╢рд┐рд╖реНрдЯ рдЙрджрд╛рд╣рд░рдг рд╣реИрдВ, рдХреНрдпреЛрдВрдХрд┐ рдореИрдВ рдФрд░ рдЕрдзрд┐рдХ рдЬрд╛рдирдиреЗ рдХреЗ рд▓рд┐рдП рдЙрддреНрд╕реБрдХ рд╣реВрдВред

рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдПрдордПрд╕ рд╡рд░реНрддрдорд╛рди рдбреЙрдЯрдиреЗрдЯ рдХреЛрд░ рд░рдирдЯрд╛рдЗрдо рдХреА рдХрдорд┐рдпреЛрдВ рд╕реЗ рдмрд╣реБрдд рдЕрд╡рдЧрдд рд╣реИрдВ рдФрд░ рдЗрд╕реАрд▓рд┐рдП рд╡реЗ рднрд╡рд┐рд╖реНрдп рдореЗрдВ рдореЛрдиреЛ рд░рдирдЯрд╛рдЗрдо рдХреЗ рд╕рд╛рде рдлреАрдЪрд░ рд╕рдорд╛рдирддрд╛ рдХреА рддрд▓рд╛рд╢ рдХрд░реЗрдВрдЧреЗред

@dazinator рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдмрд╣реБрдд рддрдереНрдп рдпрд╣ рд╣реИ рдХрд┐ рдПрдордПрд╕ рдХрд┐рд╕реА рднреА рддрд░рд╣ рд╕реЗ рд╕реЛрдЪрддрд╛ рд╣реИ рдХрд┐ рдореЛрдиреЛ рдХрд┐рд╕реА рднреА рдЪреАрдЬ рдХреЗ рд▓рд┐рдП рдПрдХ рд╕рднреНрдп рд╕рдорд╛рдзрд╛рди рд╣реИ рдпрд╣ рджрд┐рдЦрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐ рд╡реЗ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЕрдкрдиреЗ рдЙрддреНрдкрд╛рджреЛрдВ рдХреЛ рдирд╣реАрдВ рдЬрд╛рдирддреЗ рд╣реИрдВред рдореИрдВрдиреЗ рдореЛрдиреЛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рд╣реИ, рдФрд░ рдЬрдм рдпрд╣ рддрдХрдиреАрдХ рдХрд╛ рдПрдХ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдЯреБрдХрдбрд╝рд╛ рд╣реИ рдФрд░ .NET рдХреЛ рдХрд╛рдлреА рд▓реЛрдХрдкреНрд░рд┐рдп рдмрдирд╛рдиреЗ рдореЗрдВ рдорджрдж рдХреА рд╣реИ, рддреЛ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдЗрд╕рдореЗрдВ рдХреБрдЫ рдЧреБрдгрд╡рддреНрддрд╛ рдХреА рдХрдореА рд╣реИ ... рдЬрд╝рдорд╛рд░рд┐рди рдиреЗ рдЕрдкрдиреА рддрдХрдиреАрдХ рдХреЛ рдмрдврд╝рд╛рд╡рд╛ рджреЗрдиреЗ рдХреЗ рд▓рд┐рдП рдХреБрдЫ рдорд╣рд╛рди рд╡рд┐рдкрдгрди рдХрд╛рд░реНрдп рдХрд┐рдП, рд▓реЗрдХрд┐рди рдпрд╣ рдУрд╡рд░-рд╣реЛрдирд╣рд╛рд░ рдФрд░ рдЕрдВрдбрд░-рдЖрдзрд╛рд░рд┐рдд рдерд╛ рд╡рд┐рддрд░рд┐рдд рдХрд░рдирд╛, рдФрд░ рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЬреЛ рдХреЛрдИ рднреА рдПрдордПрд╕ рдореЗрдВ рдЙрди рдирд┐рд░реНрдгрдпреЛрдВ рдХреЛ рд▓реЗ рд░рд╣рд╛ рд╣реИ, рдЙрдиреНрд╣реЛрдВрдиреЗ рдЕрдкрдиреА рдХреБрдЫ рдкреНрд░реЛрдореЛ рд╕рд╛рдордЧреНрд░реА рджреЗрдЦреА рдФрд░ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдХрднреА рднреА рддрдХрдиреАрдХ рдХрд╛ рдЗрд╕реНрддреЗрдорд╛рд▓ рдирд╣реАрдВ рдХрд┐рдпрд╛ред рджреВрд╕рд░реА рдУрд░ CoreRT рдПрдХ рдРрд╕реА рддрдХрдиреАрдХ рд╣реИ, рдЬреЛ рдЕрдм рддрдХ рдореЗрд░реЗ рд▓рд┐рдП рдмрд╣реБрдд рдЕрдзрд┐рдХ рд╣реИред рдпрд╣ рдореЗрд░реА рд░рд╛рдп рдореЗрдВ рдЧреБрдгрд╡рддреНрддрд╛ рдХреЗ рдПрдХ рдФрд░ рд╕реНрддрд░ рдкрд░ рд╣реИ, рдФрд░ рдлрд┐рд░ рднреА рдпрд╣ рдПрдордПрд╕ рджреНрд╡рд╛рд░рд╛ рдХреБрдЫ рддрдХрдиреАрдХ рдХреЗ рдкрдХреНрд╖ рдореЗрдВ рдЙрдкреЗрдХреНрд╖рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд░рд╣рд╛ рд╣реИ рдХрд┐ рдореБрдЭреЗ рд╕рдВрджреЗрд╣ рд╣реИ рдХрд┐ рдореИрдВ рдмрддрдЦ рдЯреЗрдк рдХреЗ рд╕рд╛рде рдПрдХ рд╕рд╛рде рдЖрдпреЛрдЬрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред

рд╕рд╣рдордд рд╣реИрдВ, рд╡реЗрдм рдлреЛрдХрд╕ рдпрд╣ рджреЗрдЦрддреЗ рд╣реБрдП рдЕрдЬреАрдм рд╣реИ рдХрд┐ IIS рдореЗрдВ рд▓рдЧрднрдЧ 8% рдмрд╛рдЬрд╛рд░ рд╣рд┐рд╕реНрд╕реЗрджрд╛рд░реА рдФрд░ рдЧрд┐рд░рд╛рд╡рдЯ рд╣реИред ASP.NET рдЕрдкреНрд░рд╛рд╕рдВрдЧрд┐рдХ рд╣реИ, рдФрд░ C # рдпрд╛ рдЗрд╕рдХреЗ рдорд╛рдирдХ рдкреБрд╕реНрддрдХрд╛рд▓рдпреЛрдВ рдореЗрдВ рдХреЛрдИ рд╕реБрдзрд╛рд░ рдХрднреА рднреА рдЗрд╕реЗ рдмрджрд▓рдиреЗ рд╡рд╛рд▓рд╛ рдирд╣реАрдВ рд╣реИред рдХрдВрд╕реЛрд▓ рдПрдкреНрд╕, рд╡рд┐рдВрдбреЛрдЬ рд╕рд░реНрд╡рд┐рд╕реЗрдЬ, рдореЛрдмрд╛рдЗрд▓ рдПрдкреНрд╕, рдФрд░ рдкреАрд╕реА рдЧреЗрдореНрд╕ рджреНрд╡рд╛рд░рд╛ C # рдХрд╛рдпрдо рд░рдЦрд╛ рдЬрд╛ рд░рд╣рд╛ рд╣реИред

@kjkrum рдХреА рдмрд╛рдд рд╣реИред рд╣рд╛рд▓рд╛рдВрдХрд┐, рд╢рд╛рдпрдж рдЙрдирдХреЗ рд▓рд┐рдП рд╡реЗрдм рдкрд░ 8% рдмрд╛рдЬрд╛рд░ рд╣рд┐рд╕реНрд╕реЗрджрд╛рд░реА рдЕрднреА рднреА рд╡рд┐рдВрдбреЛрдЬ рдФрд░ рдореЛрдмрд╛рдЗрд▓ рдРрдк рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдЕрдзрд┐рдХ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реИред рдмрд╣реБрдд рдХрдо рд╕реЗ рдХрдо рд╡рд┐рдВрдбреЛрдЬрд╝ рд╕рд░реНрд╡рд░ рдХреА рдмрд┐рдХреНрд░реА рдореЗрдВ рдЕрдЪреНрдЫреА рд╡реЗрдм рддрдХрдиреАрдХреЗрдВ рдорджрдж рдХрд░рддреА рд╣реИрдВ, рдЗрд╕рд▓рд┐рдП рдЙрд╕ рдкрд░ рдЙрдирдХреА рд░реБрдЪрд┐ рдХрд╛рдлреА рд╕реНрдкрд╖реНрдЯ рд╣реИ, рд▓реЗрдХрд┐рди рдЗрд╕ рдкрд░ рдЗрддрдирд╛ рдзреНрдпрд╛рди рдХреЗрдВрджреНрд░рд┐рдд рдХрд░рдирд╛ рднреА рдПрдХ рдмрд╣реБрдд рдЙрдерд▓реА рд░рдгрдиреАрддрд┐ рд╣реИ рдФрд░ рдореИрдВ рдпрд╣ рдорд╛рдирдиреЗ рд╕реЗ рдЗрдирдХрд╛рд░ рдХрд░рддрд╛ рд╣реВрдВ рдХрд┐ рдЙрдирдХреЗ рдлреИрд╕рд▓реЗ рдХреНрдпрд╛ рд╣реИрдВред рдПрдордПрд╕ рдбреЙрдЯрдиреЗрдЯ рдлрд╛рдЙрдВрдбреЗрд╢рди рдХреЗ рд╕рд╛рде рд╕рд╣реА рджрд┐рд╢рд╛ рдореЗрдВ рдЬрд╛ рд░рд╣рд╛ рдерд╛ рдФрд░ рдЗрддрдиреЗ рд╕рд╛рд░реЗ рд╣реЛрдирд╣рд╛рд░ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдЪрд▓ рд░рд╣реЗ рдереЗ, рд▓реЗрдХрд┐рди рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╡реЗ рдЗрд╕ рдЕрд╡рд╕рд░ рдХреЛ рдПрдХ рдкреНрд░рдореБрдЦ рдЯреЗрдХ рдкрд╛рд╕ рд╣реЛрдиреЗ рджреЗ рд░рд╣реЗ рд╣реИрдВред

рдореБрдЭреЗ рдкрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдПрдХ рдРрд╕рд╛ рдЕрдиреЛрдЦрд╛ рддрд░реАрдХрд╛ рд╣реИ, рдЬреЛ рд╢рд╛рдпрдж рд╡реНрдпрд░реНрде рд╣реИ, рд▓реЗрдХрд┐рди рдореИрдВ рд╕рднреА рд▓реЛрдЧреЛрдВ рдХреЛ рдЬрд╛рдирддрд╛ рд╣реВрдВ, рдЬреЛ рдЕрдкрдиреА рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдХреЗ рд▓рд┐рдП C # рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣реЗ рдереЗ (рдЬреНрдпрд╛рджрд╛рддрд░ рдЧреЗрдо рджреЗрд╡) рдХреБрдЫ рдФрд░ рд╕реАрдорд╛рдУрдВ рдореЗрдВ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рд╣реЛ рдЧрдП, рдЬреЛ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рд╣рд▓ рдХрд░рдиреЗ рдпреЛрдЧреНрдп рдереЗред рд╡реЗ рд░реБрд╕реНрдд, рдбреА, рдЧреЛ рдФрд░ рд╕реА ++ рдореЗрдВ рдЪрд▓реЗ рдЧрдПред рдореИрдВ рд╕реНрд╡рдпрдВ рдирд┐рдпрдорд┐рдд рд░реВрдк рд╕реЗ C ++ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реВрдВ рдФрд░ рдореИрдВ Rust рд╕реАрдЦ рд░рд╣рд╛ рд╣реВрдВ, рд▓реЗрдХрд┐рди рдореИрдВ рдЕрднреА рднреА рдХреБрдЫ рд╡реНрдпрдХреНрддрд┐рдЧрдд рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдХреЗ рд▓рд┐рдП C # рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣рд╛ рд╣реВрдВ, рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдмрд╣реБрдд рдмреЗрд╣рддрд░ рд╣реИ, рднрд▓реЗ рд╣реА рдЧреБрдгрд╡рддреНрддрд╛ рд╡рд╛рд▓реЗ рдЙрддреНрдкрд╛рдж рдХреЛ рддреИрдирд╛рдд рдХрд░рдирд╛ рд░рд┐рдпрд░ рдореЗрдВ рджрд░реНрдж рд╣реЛред

рдпрд╣ рдПрдХрддрд╛ рдФрд░ рдЬрд╝рд╛рдорд░реАрди рдХреЗ рдЕрд╕реНрддрд┐рддреНрд╡ рдХреЛ рдЬрд╛рд░реА рд░рдЦрддрд╛ рд╣реИред

рд╣рд╛рдВ, рдХрдИ рддрдХрдиреАрдХреА рд╕рдорд╕реНрдпрд╛рдУрдВ рдХреЗ рдХрд╛рд░рдг рдХреНрдпрд╛ рдЖрд╢реАрд░реНрд╡рд╛рдж рдФрд░ рдПрдХ рдЕрднрд┐рд╢рд╛рдк рд╣реИред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП рдПрдХрддрд╛ рдХреА рдмрд╣реБрдд рдЦрд░рд╛рдм рдкреНрд░рддрд┐рд╖реНрдард╛ рд╣реИ, рд▓реЗрдХрд┐рди рд╕реМрднрд╛рдЧреНрдп рд╕реЗ рд╡рд╣ .NET / C # рдХреЛ рдкреНрд░рднрд╛рд╡рд┐рдд рдирд╣реАрдВ рдХрд░рддрд╛ рдерд╛ред
XNA рд╣рд╛рд▓рд╛рдБрдХрд┐, рд╣рд╛рд▓рд╛рдВрдХрд┐ рдЕрднреА рднреА рдПрдХрджрдо рд╕рд╣реА рд╣реИ рд▓реЗрдХрд┐рди рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдФрд░ рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЗ рдмреАрдЪ рдПрдХ рдЕрд╡рд┐рд╢реНрд╡рд╕рдиреАрдп рд░реВрдк рд╕реЗ рдмрд╣реБрдд рдЕрдЪреНрдЫреА рдкреНрд░рддрд┐рд╖реНрдард╛ рд╣реИред

рдЖрдЬ .NET рдХреЛрд░ 3.0 рдХреЗ рд╕рд╛рде рдЗрд╕ рднреВрдорд┐ рдХреЛ рджреЗрдЦрдХрд░ рдЦреБрд╢реА рд╣реБрдИред рдзрдиреНрдпрд╡рд╛рдж рджреЛрд╕реНрддреЛрдВ! ЁЯСН

рдореБрдЭреЗ рдпрдХреАрди рдирд╣реАрдВ рд╣реИ рдХрд┐ рд▓реЛрдЧ рдХреНрдпрд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рдЕрдЧрд░ рд╣рдо рд╕рд╛рдзрд╛рд░рдг рдХреИрд▓рдХреБрд▓реЗрдЯрд░ рдХреЗ рд╕рд╛рде рд╕рдорд╛рдкреНрдд рд╣реЛрддреЗ рд╣реИрдВ рдЬреЛ 141mb exe рд╣реИ, рддреЛ рд╕реБрд╡рд┐рдзрд╛ рдПрдХ рд╡рд┐рдлрд▓рддрд╛ рд╣реИ (рдФрд░ рдореЗрд░рд╛ рдорд╛рдирдирд╛ тАЛтАЛрд╣реИ рдХрд┐ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рд▓рд╛рдЧрдд 141mb * 2 рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдХрд╣реАрдВ рд╕рд╛рдорд╛рди рдирд┐рдХрд╛рд▓рдиреЗ рд╡рд╛рд▓рд╛ рд╣реИ)

image

рд╣рд╛рдВ, рдпрд╣ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдореИрдВ рдЪрд╛рд╣рддрд╛ рд╣реВрдВред рдпрд╣ рдЕрднреА рднреА рдПрдХ рдирд┐рдпрдорд┐рдд рд░реВрдк рд╕реЗ рд╕реНрд╡-рдирд┐рд╣рд┐рдд рддреИрдирд╛рддреА рд╕реЗ рдЫреЛрдЯрд╛ рд╣реИред

рдЕрдзрд┐рдХ рдЖрдХреНрд░рд╛рдордХ рд╡рд┐рдзрд╛рдирд╕рднрд╛ рдЯреНрд░рд┐рдорд┐рдВрдЧ рдФрд░ рдЯреНрд░реА-рд╢реЗрдХрд┐рдВрдЧ рдХрд╛ рд╕реНрд╡рд╛рдЧрдд рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛, рд▓реЗрдХрд┐рди рдпрд╣ рдПрдХ рдмрд╣реБрдд рд╣реА рдЙрдкрдпреЛрдЧреА рд╢реБрд░реБрдЖрдд рд╣реИред рд╡реГрджреНрдзрд┐рд╢реАрд▓ рд╕реБрдзрд╛рд░ рдореВрд▓реНрдп рджреЗрдиреЗ рдХрд╛ рд╕рдмрд╕реЗ рдЪрддреБрд░ рддрд░реАрдХрд╛ рд╣реИред

рдУрд╣, рдпрд╣ рдЖрдк рдХреНрдпрд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ? рдореЗрд░рд╛ рдмреБрд░рд╛, рдореБрдЭреЗ рдирд╣реАрдВ рдкрддрд╛ рдерд╛ рдХрд┐ рдлреВрд▓рд╛ рд╣реБрдЖ рдЖрд╡реЗрджрди рд▓реЛрдХрдкреНрд░рд┐рдп рдерд╛

рдПрдХ рдХреИрд▓рдХреБрд▓реЗрдЯрд░ рдХреЛ рдЬреЗрдЖрдИрдЯреА рдХреА рдЬрд░реВрд░рдд рдирд╣реАрдВ рд╣реИ, рдпрд╣рд╛рдВ рддрдХ тАЛтАЛрдХрд┐ рдкреНрд░рддрд┐рдмрд┐рдВрдм рднреА рдирд╣реАрдВ, рд▓реЗрдХрд┐рди рдЬрдм рд╕реЗ рдЖрдк рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдореИрдВ рд╢реБрд░реБрдЖрдд рд╕реЗ рд╣реА рдЧрд▓рдд рд╣реВрдВ, рдореБрдЭреЗ рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рдмрдВрдж рдХрд░ рджреЗрдирд╛ рдЪрд╛рд╣рд┐рдП

@ рд░реВрд╕ рдпрд╣ рдХрд┐рд╕реА рднреА рдЕрдиреНрдп рдЖрддреНрдо рдирд┐рд╣рд┐рдд рддреИрдирд╛рддреА рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдЕрдзрд┐рдХ рдлреВрд▓рд╛ рд╣реБрдЖ рдирд╣реАрдВ рд╣реИ, рд╣реИ рдирд╛?

рдЬреЗрдЖрдИрдЯреА рдХреЛ рд╣рдЯрд╛рдиреЗ рдФрд░ рдкреНрд░рддрд┐рдмрд┐рдВрдм рд╕реЗ рд╕реНрд╡рддрдВрддреНрд░ рд╣реИ рдХрд┐ рдХреНрдпрд╛ рд╕рдм рдХреБрдЫ рдПрдХ рд╣реА exe рдореЗрдВ рдкреИрдХ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред рдпрд╛рдиреА рдЖрдк рдЬреЗрдЖрдИрдЯреА рдХреЛ рд╣рдЯрд╛ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рд╕рд┐рдВрдЧрд▓-рдПрдХреНрд╕ рдХреЗ рдмрд┐рдирд╛ рдкрд░рд╛рд╡рд░реНрддрди рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдФрд░ рдЖрдк рдЬреЗрдЖрдИрдЯреА рдФрд░ рдкреНрд░рддрд┐рдмрд┐рдВрдм рдХреЛ рд╣рдЯрд╛рдП рдмрд┐рдирд╛ рд╕рд┐рдВрдЧрд▓-рдПрдХреНрд╕ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рд╡реЗ рдХрд╛рдо рдХреЗ рдЕрд▓рдЧ-рдЕрд▓рдЧ рдЯреБрдХрдбрд╝реЗ рд╣реИрдВред

рдореБрдЭреЗ рдпрдХреАрди рдирд╣реАрдВ рд╣реИ рдХрд┐ рд▓реЛрдЧ рдХреНрдпрд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рдЕрдЧрд░ рд╣рдо рд╕рд╛рдзрд╛рд░рдг рдХреИрд▓рдХреБрд▓реЗрдЯрд░ рдХреЗ рд╕рд╛рде рд╕рдорд╛рдкреНрдд рд╣реЛрддреЗ рд╣реИрдВ рдЬреЛ 141mb exe рд╣реИ, рддреЛ рд╕реБрд╡рд┐рдзрд╛ рдПрдХ рд╡рд┐рдлрд▓рддрд╛ рд╣реИ (рдФрд░ рдореЗрд░рд╛ рдорд╛рдирдирд╛ тАЛтАЛрд╣реИ рдХрд┐ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рд▓рд╛рдЧрдд 141mb * 2 рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдХрд╣реАрдВ рд╕рд╛рдорд╛рди рдирд┐рдХрд╛рд▓рдиреЗ рд╡рд╛рд▓рд╛ рд╣реИ)

рдЗрд╕рдХреА рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ C: рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ [YourUserName] AppDataLocalTemp.net рдкрд░ рдирд┐рдХрд╛рд▓реЗрдВ

рдХреНрдпрд╛ рдХреЛрдИ рдРрд╕рд╛ рддрд░реАрдХрд╛ рд╣реИ рдЬрд┐рд╕рд╕реЗ рд╕рд┐рдВрдЧрд▓ рдПрдХреНрд╕рдкреЗрдХреНрдЯ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХреЗрдЧрд╛?
рдЬрдм рдореИрдВ / var / .... рдореЗрдВ рдирд┐рдХрд╛рд▓рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░рддрд╛ рд╣реВрдВ, рддреЛ рдореИрдВ рд╕рдорд╕реНрдпрд╛ рдореЗрдВ рднрд╛рдЧ рдЧрдпрд╛, рдЬрд╣рд╛рдВ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЗ рдкрд╛рд╕ рд▓рд┐рдЦрдиреЗ рдХреА рдХреЛрдИ рдЕрдиреБрдорддрд┐ рдирд╣реАрдВ рд╣реИред

@eiva рдпрд╣ рдХреМрди рд╕рд╛ рдУрдПрд╕ рдерд╛? рдХреНрдпрд╛ рдпрд╣ AWS рд▓рдВрдмрд╛ рдерд╛?
https://github.com/dotnet/core-setup/issues/7940 рдЗрд╕ рд╕рдорд╕реНрдпрд╛ рдХреЛ рдареАрдХ рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рдЯреНрд░реИрдХред

рдЗрд╕ рдмреАрдЪ, рдЖрдк рдпрд╣ рдирд┐рдпрдВрддреНрд░рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП DOTNET_BUNDLE_EXTRACT_BASE_DIR рд╡рд╛рддрд╛рд╡рд░рдг рдЪрд░ рд╕реЗрдЯ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдЬрд╣рд╛рдВ рдмрдВрдбрд▓ рдХреА рдЧрдИ рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рдирд┐рдХрд╛рд▓рд╛ рдЬрд╛рддрд╛ рд╣реИред

@ рд╕реНрд╡рд░-рд╢реНрд░реАрдзрд░ рдЙрддреНрддрд░ рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рдж!
рдпрд╣ "рдкреНрд░рддрд┐рдмрдВрдзрд┐рдд" рд╕реЗрд╡рд╛ рдЦрд╛рддреЗ рд╕реЗ рд╕реЗрдВрдЯреЛ.7 рд▓реЙрдиреНрдЪрд┐рдВрдЧ рдРрдк рд╣реИред

@ jnm2 рдореИрдВ рд╕рд░рд╛рд╣рдирд╛ рдХрд░рддрд╛ рд╣реВрдВ рдХрд┐ рдЖрдк C # рд╕реЗ рдкреНрдпрд╛рд░ рдХрд░рддреЗ рд╣реИрдВ, рдореИрдВ рднреА рдХрд░рддрд╛ рд╣реВрдВред рд▓реЗрдХрд┐рди рдИрдорд╛рдирджрд╛рд░ рд╣реЛрдиреЗ рджреЗрдВ, рдпрд╣ рдкрд╛рдЧрд▓рдкрди рд╣реИ рдХрд┐ рдПрдХ рдХреИрд▓рдХреБрд▓реЗрдЯрд░ 128 рдореЗрдЧрд╛рдмрд╛рдЗрдЯ рд╣реИред

@TechnikEmpire рдореБрдЭреЗ рдпрд╣ рдЗрдВрдЧрд┐рдд рдХрд░рдирд╛ рдЖрд╡рд╢реНрдпрдХ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ "I love C #" рдЬреЛ рдореИрдВрдиреЗ рдКрдкрд░ рдХрд╣рд╛ рд╣реИ рдЙрд╕рдХреА рдмрд╣реБрдд рдЧрд╣рди рдХрдореА рд╣реИ: D

рдореИрдВ рд╡реНрдпрдХреНрддрд┐рдЧрдд рд░реВрдк рд╕реЗ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рд╕рдВрддреБрд╖реНрдЯ рдорд╣рд╕реВрд╕ рдирд╣реАрдВ рдХрд░рдиреЗ рдЬрд╛ рд░рд╣рд╛ рд╣реВрдВ рдЬрдм рддрдХ рдХрд┐ рдореИрдВ рдЕрдкрдиреЗ рд╕реНрд╡рдпрдВ рдХреЗ рдХреЛрдб рдФрд░ libs рдХреЗ рдЯреНрд░реА-рд╢реЗрдХрд┐рдВрдЧ рдХрд░рдиреЗ рдХреА рдХреНрд╖рдорддрд╛ рд░рдЦрддрд╛ рд╣реВрдВ, рддреГрддреАрдп рдкрдХреНрд╖ рдХреЗ рд▓рд┐рдмрд╛рд╕, рдФрд░ .NET рд╕реНрд╡рдпрдВ рдХреЛ рд╕рдВрджрд░реНрднрд┐рдд рдХрд░рддрд╛ рд╣реВрдВред рд▓реЗрдХрд┐рди рдпрд╣ рдЖрдЬ рдореЗрд░реЗ рд▓рд┐рдП рдХрд┐рд╕реА рднреА рдХрдо рдореВрд▓реНрдпрд╡рд╛рди рд╕реБрд╡рд┐рдзрд╛ рдХреЛ рдирд╣реАрдВ рдмрдирд╛рддрд╛ рд╣реИред рдпрд╣ рдПрдХ рдЖрдпрд╛рдо рдХреЗ рд╕рд╛рде рдПрдХ рдХрджрдо рд╣реИред рдЯреНрд░реА-рд╢реЗрдХрд┐рдВрдЧ рдПрдХ рд╕реНрд╡рддрдВрддреНрд░ рдЖрдпрд╛рдо рд╣реИ рдФрд░ рдореБрдЭреЗ рдЙрдореНрдореАрдж рд╣реИ рдХрд┐ рдЗрд╕ рдкрд░ рдмрд╣реБрдд рдзреНрдпрд╛рди рджрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред

рдХреНрдпрд╛ рдпрд╣ рдкреГрд╖реНрда рдЙрдкрдпреЛрдЧреА рдерд╛?
0 / 5 - 0 рд░реЗрдЯрд┐рдВрдЧреНрд╕