نحوه عیب‌یابی خطاهای «hostpolicy.dll» و «singlefilehost.exe» در NET 8.0.11

شکستن تغییرات در .NET Build Tools از 8.0.0 تا 8.0.11

پس از ارتقاء به .NET 8.0.11، ساخت برخی از پروژه های من با شکست مواجه شد…

1 شرح مشکل

تنظیمات پروژه ساخت همگی در حدود .NET 8.0.0 به خوبی کار می کردند. بعداً با ارتقاء زمان اجرا دات نت به نسخه های بعدی دات نت 8.0 و دات نت 9.0 و ارتقاء به ویژوال استودیو، برخی از پروژه ها از کار افتادند. به نظر می‌رسد که آنها تغییراتی را در ابزارهای ساخت ایجاد کرده‌اند. منطق هنوز سالم است و انواع ساخت یکسان است، فقط ابزارهای ساخت کمی متفاوت عمل کردند. پیکربندی های ساخت جدید و اسکریپت های ساخت مورد نیاز است.

فکر می کنم بتوانم آن را پیدا کنم تغییر رفتار در جایی بین (NET Framework 8.0.0/.NET SDK 8.0.100) و (NET Framework 8.0.11/.NET SDK 8.0.404). نه همه، اما برخی از ساخت‌های پروژه شکست خوردند.

1.1 محیط زیست

محیط معمولی که این مقاله برای آن اعمال می شود، C#/VS2022 است.

دات نت نسخه 8.0.11 یا بالاتر

و شما در حال ساخت نوع پروژه هستید SelfContained یا SingleFile

1.2 تجلی مشکل

شما دریافت می کنید خطاها/استثناها:

+++Error1,When running the application:++++++++++++++++++++

A fatal error was encountered. The library 'hostpolicy.dll' required to execute the application 
was not found in 'C:\Program Files\dotnet\'.
Failed to run as a self-contained app.
  - The application was...

Source link