Uwaga
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Czas uruchamiania aplikacji .NET Framework można poprawić przez wstępne kompilowanie plików binarnych. Tej technologii można używać w dużych aplikacjach, które pakujesz i rozpowszechniasz za pośrednictwem sklepu Microsoft Store. W niektórych przypadkach zaobserwowaliśmy 20% poprawę wydajności. Więcej informacji na temat tej technologii można uzyskać w temacie Omówienie techniczne.
Opublikowaliśmy kompilator obrazów natywnych jako pakiet NuGet. Ten pakiet można zastosować do dowolnej aplikacji .NET Framework przeznaczonej dla programu .NET Framework w wersji 4.6.2 lub nowszej. Ten pakiet dodaje etap po kompilacji, który zawiera natywną zawartość do wszystkich plików binarnych wykorzystywanych przez aplikację. Ten zoptymalizowany ładunek zostanie załadowany, gdy aplikacja będzie działać na platformie .NET 4.7.2 lub nowszej, podczas gdy poprzednie wersje nadal będą ładować kod MSIL.
Program .NET Framework 4.7.2 jest uwzględniony w aktualizacji systemu Windows 10 z kwietnia 2018 r. Możesz również zainstalować tę wersję programu .NET Framework na komputerach z systemami Windows 7+ i Windows Server 2008 R2+.
Ważne
Jeśli chcesz utworzyć obrazy natywne dla swojej aplikacji pakowanej przez projekt Windows Application Packaging, upewnij się, że ustawiono minimalną wersję Platformy docelowej projektu na Aktualizację rocznicową systemu Windows.
Jak tworzyć obrazy natywne
Postępuj zgodnie z tymi instrukcjami, aby skonfigurować projekty.
Konfigurowanie platformy docelowej jako 4.6.2 lub nowszej
Konfigurowanie platformy docelowej jako x86 lub x64
Dodaj pakiety NuGet.
Utwórz kompilację wydania.
Konfigurowanie platformy docelowej jako 4.6.2 lub nowszej
Aby skonfigurować projekt pod kątem platformy .NET Framework 4.6.2, potrzebne będą narzędzia programistyczne .NET Framework 4.6.2 lub nowsze. Te narzędzia są dostępne za pośrednictwem instalatora programu Visual Studio jako opcjonalne składniki w ramach środowiska deweloperskiego aplikacji klasycznych .NET:
Alternatywnie możesz pobrać pakiety deweloperskie platformy .NET z: https://www.microsoft.com/net/download/visual-studio-sdks
Konfigurowanie platformy docelowej jako x86 lub x64
Kompilator obrazów natywnych optymalizuje kod dla danej platformy. Aby go używać, należy skonfigurować aplikację tak, aby była skierowana do jednej określonej platformy, takiej jak x86 lub x64.
Jeśli masz wiele projektów w rozwiązaniu, tylko projekt punktu wejścia (najprawdopodobniej projekt tworzący plik wykonywalny) musi zostać skompilowany jako x86 lub x64. Dodatkowe pliki binarne, do których odwołuje się główny projekt, zostaną przetworzone z architekturą określoną w głównym projekcie, nawet jeśli są one kompilowane jako AnyCPU.
Aby skonfigurować projekt:
Kliknij rozwiązanie prawym przyciskiem myszy, a następnie wybierz pozycję Configuration Manager.
Wybierz pozycję <Nowy .> w menu rozwijanym Platforma obok nazwy projektu, który generuje plik wykonywalny.
W oknie dialogowym Nowa platforma projektu upewnij się, że na liście rozwijanej Ustawienia kopiowania jest ustawiona wartość Dowolny procesor CPU.
Powtórz ten krok dla Release/x64
, jeśli chcesz utworzyć pliki binarne x64.
Ważne
Konfiguracja platformy AnyCPU nie jest obsługiwana przez kompilator obrazów natywnych.
Dodawanie pakietów NuGet
Kompilator obrazu natywnego jest dostarczany jako pakiet NuGet, który należy dodać do projektu programu Visual Studio tworzącego plik wykonywalny. Jest to zazwyczaj projekt Windows Forms lub WPF. Użyj tego polecenia programu PowerShell, aby to zrobić.
PM> Install-Package Microsoft.DotNet.Framework.NativeImageCompiler -Version 1.0.0
Kompilacja wersji finalnej
Pakiet NuGet konfiguruje projekt pod kątem uruchamiania dodatkowego narzędzia przy budowaniu wersji do wydania. To narzędzie dodaje kod macierzysty do tych samych plików binarnych. Aby sprawdzić, czy narzędzie przetworzyło pliki binarne, możesz przejrzeć dane wyjściowe kompilacji, aby upewnić się, że zawiera on komunikat, taki jak ten:
Native image obj\x86\Release\\R2R\DesktopApp1.exe generated successfully.
Kompilacja obrazu natywnego może być wyzwalana w kompilacjach niewydaniowych, ustawiając właściwość NgenR2R
na true
w pliku projektu.
Często zadawane pytania
Pytanie Czy nowe pliki binarne działają na maszynach bez programu .NET Framework 4.7.2?
Odp. Zoptymalizowane pliki binarne będą korzystać z ulepszeń podczas pracy z programem .NET Framework 4.7.2. Klienci, którzy uruchamiają poprzednie wersje platformy .NET Framework, załadują nieoptymalizowany kod MSIL z pliku binarnego.
Pytanie Jak mogę przekazać opinię lub zgłosić problemy?
Odp. Zgłoś problem przy użyciu narzędzia Opinie w programie Visual Studio. Więcej informacji.
Pytanie Jaki jest wpływ dodawania obrazu natywnego do istniejących plików binarnych?
Odp. Zoptymalizowane pliki binarne zawierają zarządzany i natywny kod, dzięki czemu ostateczne pliki będą większe.
Pytanie Czy mogę opublikować pliki binarne przy użyciu tej technologii?
Odp. Ta wersja zawiera licencję Go Live, której można używać dzisiaj.