Informacje o wersji 17.10 programu Visual Studio 2022
Napiwek
Obejrzyj nagrania z premiery programu Visual Studio 2022, aby dowiedzieć się więcej o nowościach, usłyszeć porady i wskazówki oraz pobrać bezpłatny cyfrowy prezent.
Developer Community | Przewodnik po programie Visual Studio 2022 | Wymagania systemowe | Zgodność | Kod dystrybucyjny | Historia wersji | Postanowienia licencyjne | Blogi | Najnowsze znane problemy | Whats New w dokumentacji programu Visual Studio
Kliknij przycisk, aby pobrać najnowszą wersję środowiska Visual Studio 2022. Aby uzyskać instrukcje dotyczące instalowania i aktualizowania środowiska Visual Studio 2022, zobacz Aktualizacja środowiska Visual Studio 2022 do najnowszej wersji. Ponadto zobacz instrukcje na temat sposobu instalowania w trybie offline.
Odwiedź witrynę środowiska Visual Studio, aby pobrać inne produkty z rodziny Visual Studio 2022.
Wydania programu Visual Studio 2022 w wersji 17.10
- 10 września 2024 r. — Visual Studio 2022 w wersji 17.10.7
- 13 sierpnia 2024 r. — Visual Studio 2022 w wersji 17.10.6
- 25 lipca 2024 r. — Visual Studio 2022 w wersji 17.10.5
- 9 lipca 2024 r. — Visual Studio 2022 w wersji 17.10.4
- 18 czerwca 2024 r. — Visual Studio 2022 w wersji 17.10.3
- 11 czerwca 2024 r. — Visual Studio 2022 w wersji 17.10.2
- 29 maja 2024 r. — Visual Studio 2022 w wersji 17.10.1
- 21 maja 2024 r. — Visual Studio 2022 w wersji 17.10.0
Visual Studio 2022 Blog
Blog programu Visual Studio 2022 to oficjalne źródło szczegółowych informacji o produkcie od zespołu inżynierów programu Visual Studio. Szczegółowe informacje na temat wydań programu Visual Studio 2022 można znaleźć w następujących wpisach:
Visual Studio 2022 w wersji 17.10.7
wydany 10 września 2024 r.
Nowości w tej wersji
- Program Xamarin Profiler został wycofany i usunięty z programu Visual Studio.
- Usunięto usterkę polegającą na tym, że niektóre składniki interfejsu użytkownika były wyświetlane jako większe niż pozostałe składniki programu VS.
- Naprawiono awarię narzędzia DeployAppRecipe.exe.
Developer Community
- Niepoprawny zestaw wygenerowany za pomocą /O2, /fp:fast i /arch:avx
- Wewnętrzny błąd kompilatora podczas uaktualniania do wersji 17.10.1 przeznaczonej dla usługi ARM64
- W wersji 17.11 (wersja zapoznawcza 2.1) kompilator generuje niepoprawne kodowanie w środowisku x86 ze fragmentem kodu pobranego z wektorowanego kodu biblioteki STL dla pliku std::min.
- Zły kod vs 17.10 z /O2 /arch:AVX2
- Skalowanie narzędzi diagnostycznych jest nieprawidłowe
Biuletyny zabezpieczeń rozwiązane
CVE-2024-35272 Luka w zabezpieczeniach dotycząca zdalnego wykonywania kodu dostawcy OLE DB natywnego klienta programu SQL Server
Visual Studio 2022 w wersji 17.10.6
wydany 13 sierpnia 2024 r.
Podsumowanie nowości w tej wersji
- Usunięto usterkę polegającą na tym, że kompilator generuje instrukcje porównania wektorów AVX podczas kompilacji /arch:SSE lub /arch:SSE2.
- Naprawiono awarię kompilatora zgłoszoną w wersji 17.10 podczas kompilowania nanobind v.1.9.2.
- Naprawiono regresję w kompilatorze języka C++ związane z gwarantowanym elisionem kopiowania w języku C++17 lub nowszym.
- Rozwiązano problem z błędną kompilacją pakietów parametrów szablonu szablonu.
- Rozwiązano problem polegający na tym, że kompilator MSVC nie mógł skompilować kodu w qtwebengine i zamiast tego emitował komunikat "C2100: nie można wyłudzać operandu typu "v8::internal::compiler::turboshaft::WordRepresentation".
Developer Community
- vs2022 17.10.0p7: usterka kodu MSVC dla "ARM64|Wydanie" w niektórych konstrukcjach pętli
- Usterka w kompilacji x86 inlining destruktor z włączoną funkcją SPGO
- Instrukcja AVX jest generowana, nawet jeśli "Włączony rozszerzony zestaw instrukcji" ustawia wartość "Nie ustawiono"
- Wewnętrzny błąd kompilatora w/ nanobind v1.9.2
- VS 17.10: Błąd fałszywej kompilacji C2102 ("&" wymaga wartości l)
- Kompilacja QtWebEingine powoduje wewnętrzny błąd kompilatora C2100
- Brak wytycznych dotyczących struktury w niektórych obszarach projektu VB.Net po uaktualnieniu do wersji 17.10.3.
Biuletyny zabezpieczeń rozwiązane
- CVE-2024-38167 Luka w zabezpieczeniach istnieje w środowisku uruchomieniowym .NET TlsStream, co może spowodować ujawnienie informacji.
- CVE-2024-38168 Luka w zabezpieczeniach istnieje na platformie .NET, gdy osoba atakująca za pośrednictwem nieuwierzytelnionych żądań może wyzwolić odmowę usługi na serwerze ASP.NET HTTP.sys sieci Web. Jest to luka w zabezpieczeniach systemu operacyjnego Windows.
Visual Studio 2022 w wersji 17.10.5
wydany 25 lipca 2024 r.
Podsumowanie nowości w tej wersji
- Logowanie się do programu Visual Studio przy użyciu konta usługi GitHub podczas uruchamiania programu Visual Studio jest teraz obsługiwanym scenariuszem. Uruchomienie programu Visual Studio jako inny użytkownik odbywa się, gdy nazwa użytkownika skojarzona z procesem programu Visual Studio nie jest dokładnie zgodna z nazwą użytkownika zalogowaną do systemu operacyjnego Windows. W przypadku użytkowników z programem VS w tych warunkach poświadczenia będą utrwalane dla sesji systemu Windows, a użytkownicy będą musieli ponownie dodać swoje konta GitHub do programu Visual Studio po każdym ponownym uruchomieniu systemu Windows.
- Przywróć poprzednie zachowanie narzędzia NuGet Central Package Management wymagające od użytkownika zgody na tę funkcję, ustawiając wartość
ManagePackageVersionsCentrally
true. - Naprawiono zawieszenie spowodowane przez wygenerowaną dokumentację copilot w szybkich informacjach w języku C++.
- Polecenie "C# Interactive" jest dostępne na kontrolerze menu "Inne okna", gdy jest on nadrzędny dla standardowego paska narzędzi.
- "Nie można odnaleźć dostawcy kontroli źródła skojarzonego z tym rozwiązaniem". Okno dialogowe nie będzie już wyświetlane podczas ładowania rozwiązań lub projektów z zestawem właściwości SccProjectName.
- Usługa Azure Attach to App Service obsługuje dołączanie do środowisk usług platformy Azure za pomocą wewnętrznych modułów równoważenia obciążenia, np. witryn kończących się na .
.appserviceenvironment.net
Developer Community
- Nie można obsłużyć pakietów NuGet, takich jak w wersji 17.9.7 (NU1008)
- Program VS2022 17.10.1 zgłasza błąd w potokach usługi Azure DevOps (self hosted)
- "LINK: błąd LNK2034: metadane niespójne z tabelą symboli COFF" podczas kompilowania programu C++/CLI odwołującego się do funkcji natywnej przy użyciu programu VS 17.9.1
- Po uaktualnieniu do wersji 17.10.0 dane wejściowe będą powolne, gdy kod będzie stosunkowo długi
- Błąd zygzaki i nawigacja uszkodzona dla projektów w udziale sieciowym
- Brak interaktywnego menu paska narzędzi języka C# po ponownym otwarciu programu VS
- Ostatni > projekt nie oferuje już opcji usunięcia nieistnienego elementu
- 17.10.0 (wersja zapoznawcza 2.0) — nie można odnaleźć dostawcy kontroli źródła skojarzonego z tym rozwiązaniem
Visual Studio 2022 w wersji 17.10.4
wydany 9 lipca 2024 r.
Podsumowanie nowości w tej wersji
- Zaktualizuj bibliotekę MinGit do wersji 2.45.2.1, która zawiera usługę GCM 2.5, która rozwiązuje problem z poprzednią wersją usługi GCM, w której zgłosił błąd z powrotem do usługi Git po sklonowaniu i sprawiła, że klon zakończył się niepowodzeniem.
- Usunięto usterkę w kodzie odczytu pliku PDB w celu ignorowania oczekiwanych błędów w niektórych plikach PDB FASTLINK.
- To naprawia awarię kompilatora z udziałem ogólnej lambdy, która odwołuje się do zmiennej lokalnej "constexpr" (bez przechwytywania jej), a funkcja lambda jest następnie zwracana z otaczającej funkcji.
- Zmniejsz rozmiar pliku ILK podczas łączenia przyrostowego.
- Poprawki uległy awarii w narzędziu DeployAppRecipe.exe.
- Rozwiązano problem z debugowaniem kontenerów alpine dotnet 6/7.
- Program VS zawiera teraz program MAUI 8.0.61 (SR6.1); https://github.com/dotnet/maui/releases/tag/8.0.61
Developer Community
- Błąd: Nie można otworzyć pliku (null). Kod błędu = 0x0000000D
- Protokół OpenMP w ARM64EC ulega awarii
- Wariant błędu kompilatora wewnętrznego (1510)
- Problem z uruchamianiem podczas kompilowania statycznego debugowania biblioteki STL z włączoną usługą ASan
- błąd krytyczny C1001: Wewnętrzny błąd kompilatora
- Po zaktualizowaniu do programu VS 17.10 rozmiar plików ilk znacznie się zwiększył, co prowadzi do błędu krytycznego LNK1210
- Kompilator "Wewnętrzny błąd kompilatora" kompilatora ARM64|Wydanie po uaktualnieniu do programu Visual Studio 2022 17.10.0
- [BŁĄD KOMPILATORA][BAD CODE GEN] Kompilator wstawiania instrukcji AVX2 w MSVC 17.10.1 przeznaczonych dla konsoli Xbox One z /arch:AVX i -d2SSAOptimizer-, powodując awarię
- ICE z nieprawidłowym szablonem w programie VS 2022 17.4 (wersja zapoznawcza 3)
- Nowy problem z debugowaniem opartym na platformie Docker nie rozwiązał poprzedniego problemu
- Debugowanie procedury składowanej z programu Sql Server Eksplorator obiektów szuka pliku procedury składowanej z komputera.
- Copilot nie pozwoli mi wpisać w debugowaniu warunkowym bez zastępowania typu
- Debuger nie może zlokalizować pliku źródłowego po aktualizacji do wersji 17.10.1
Biuletyny zabezpieczeń rozwiązane
- CVE-2024-38081 Luka w zabezpieczeniach istnieje w instalatorze programu Visual Studio w systemie operacyjnym Windows, w którym nieuprzywilejowany użytkownik może manipulować instalacją programu Visual Studio, co powoduje podniesienie uprawnień.
- CVE-2024-30105 Luka w zabezpieczeniach istnieje na platformie .NET podczas wywoływania metody JsonSerializer.DeserializeAsyncEnumerable względem niezaufanych danych wejściowych przy użyciu pliku System.Text.Json może spowodować odmowę usługi.
- CVE-2024-38095 Luka w zabezpieczeniach występuje, gdy system.Formats.Asn1 na platformie .NET analizuje certyfikat X.509 lub zbieranie certyfikatów, złośliwy certyfikat może spowodować nadmierne użycie procesora CPU na wszystkich platformach, co spowoduje odmowę usługi.
- CVE-2024-35264 Luka w zabezpieczeniach istnieje w ASP.NET Core 8, gdzie uszkodzenie danych w Kestrel HTTP/3 może spowodować zdalne wykonanie kodu.
Visual Studio 2022 w wersji 17.10.3
wydany 18 czerwca 2024 r.
Podsumowanie nowości w tej wersji
- Program Visual Studio nie ulegnie awarii po wykonaniu polecenia interaktywnego języka C# z kontrolki MenuController na pasku narzędzi w warstwie Standardowa.
- Użycie znaku @ wewnątrz pomocnika tagu w pliku razor może prowadzić do nieprawidłowych błędów kompilacji. https://github.com/dotnet/razor/issues/10186
Developer Community
- Rozszerzenie nie działa już po uaktualnieniu do wersji 17.10.2, brak rozszerzenia.Contracts
- Vs 2022 typescript intellisense nie działa w wersji 17.10.1
- Kopiowanie w debugowaniu wizualizatora tekstu jest uszkodzone
- TAB nie akceptuje niezawodnie szarej sugestii tekstowej w języku Markdown dla uzupełniania copilot w programie Visual Studio 17.8.6
- Brak menu interaktywnego języka C# na pasku narzędzi | Inne okna
Visual Studio 2022 w wersji 17.10.2
wydany 11 czerwca 2024 r.
Podsumowanie nowości w tej wersji
- Rozwiązano problem polegający na tym, że błędy języka TypeScript mogły być wyświetlane w pliku Razor, gdy nie ma błędów w języku TypeScript dla pliku.
- Po uaktualnieniu do kompilacji Germanium systemu Windows program WSL wymaga ręcznego uaktualnienia. Może to spowodować zawieszenie programu Visual Studio podczas otwierania projektów CMake.
- Program VS obejmuje teraz program MAUI 8.0.40 (SR5)
- Dodaj opcjonalny składnik instalatora dla ostatnio wydanego zestawu Windows SDK w wersji 10.0.26100.
- Użycie zestawu .NET SDK 7 powodowało problemy w połączeniu z projektami Razor. https://github.com/dotnet/razor/issues/10411. Uwaga: seria .NET SDK 7 jest niedostępna. Klienci, którzy wcześniej osiągali ten problem, powinni zdecydowanie rozważyć przejście do zestawu SDK platformy .NET, który jest w pomocy technicznej.
Developer Community
- TS1109 (TS) Oczekiwany błąd wyrażenia w pliku Razor
- cmdnameRunIntellisenseCheck leftover in Tools (Narzędzia)
- Nie można przywrócić narzędzia NuGet po zaktualizowaniu społeczności programu Visual Studio do wersji 17.10.0. Element o tym samym kluczu został już dodany.
- Nie można debugować kodu x86 na procesorach Szafir Rapids w programie Visual Studio 2022
Biuletyny zabezpieczeń rozwiązane
- CVE-2024-30052 Zdalne wykonywanie kodu podczas debugowania plików zrzutu zawierających złośliwy plik z odpowiednim rozszerzeniem
- CVE-2024-29060 Podniesienie uprawnień w przypadku uruchomienia instalacji programu Visual Studio, której dotyczy problem
- CVE-2024-29187 Instalatory oparte na WiX są narażone na przejęcie binarne po uruchomieniu jako SYSTEM
Visual Studio 2022 w wersji 17.10.1
wydany 29 maja 2024 r.
Podsumowanie nowości w tej wersji
Developer Community
- Program Visual Studio w pętli uruchamiania z powodu nieaktualnego rozszerzenia GitHub Copilot po uaktualnieniu
- Nie można odnaleźć zestawu SDK "Microsoft.VCLibs.Desktop, Version=14.0"
- VS 17.10.0 Preview 3.0 i MFC user dll + CLR —> błąd konsolidatora
- Nieoczekiwane skrypty vblendp zamiast vinsertps podczas korzystania z łańcucha narzędzi 14.39.33523
- cl.exe uległ awarii podczas kompilowania najnowszego oprogramowania clang dla x64
- VS2022 17.10.0 (wersja zapoznawcza 4) kontrolera testów lub błędu agenta: Wypełnienie jest nieprawidłowe i nie można go usunąć
Visual Studio 2022 w wersji 17.10.0
wydany 21 maja 2024 r.
Podsumowanie nowości w tej wersji
GitHub Copilot w programie Visual Studio
GitHub Copilot: Twój towarzysz kodowania opartego na sztucznej inteligencji jest bezproblemowo tkany w środowisku IDE programu Visual Studio, zwiększając codzienne zadania i zapewniając najnowsze środowiska kodowania oparte na sztucznej inteligencji. Copilot został zaprojektowany tak, aby zwiększyć wydajność, oferując:
- Spersonalizowane sugestie dotyczące kodu
- Tworzenie komunikatów zatwierdzenia usługi Git
- Odpowiadanie na zapytania związane z kodowaniem
Wprowadziliśmy nowe, ujednolicone środowisko Copilot w programie Visual Studio 17.10. Łączy to funkcje Copilot i Copilot Chat w jeden wygodny pakiet, eliminując konieczność instalowania dwóch oddzielnych rozszerzeń. Korzystaj z bardziej zintegrowanych środowisk sztucznej inteligencji! Aktywuj subskrypcję usługi GitHub Copilot już dziś, logując się do usługi GitHub lub uruchamiając bezpłatną wersję próbną dla najnowszego środowiska sztucznej inteligencji.
Uwaga: Copilot znajduje się teraz w prawym górnym rogu interfejsu programu Visual Studio.
Ulepszanie przeglądów kodu za pomocą wygenerowanych opisów żądań ściągnięcia
Podobnie jak w przypadku naszej wygenerowanej funkcji komunikatu zatwierdzenia Git, możesz teraz uzyskać pierwszą wersję roboczą opisu żądania ściągnięcia utworzonego przez narzędzie GitHub Copilot. Uzyskasz pomoc w dostarczaniu ważnego kontekstu współpracownikom na potrzeby ich recenzji i dokładnie sprawdzisz, czy uwzględniasz odpowiednie zmiany w żądaniu ściągnięcia.
Musisz sprawdzić, czy masz aktywną subskrypcję Narzędzia Copilot w usłudze GitHub i zainstalowane rozszerzenie czatu w usłudze GitHub Copilot. Wypróbuj tę treść, klikając ikonę pióra "Dodaj opis żądania ściągnięcia wygenerowanego przez sztuczną inteligencję" w oknie Tworzenie żądania ściągnięcia. Podziel się swoją opinią na temat tej funkcji tutaj.
Wysłuchaliśmy twojej opinii i skróciliśmy dane wyjściowe wygenerowanych funkcji zatwierdzania git. Podziel się opinią na temat tej zmiany w bilecie w społeczności deweloperów.
Rozwikłanie historii zatwierdzń za pomocą narzędzia GitHub Copilot
Historia usługi Git może być trudna do przetasowania, ale często najlepszym sposobem na poznanie bazy kodu lub pomoc w zidentyfikowaniu źródła usterki. Dodaliśmy funkcję objaśnienia obsługiwanego w usłudze GitHub Copilot do okna Szczegóły zatwierdzenia, aby ułatwić zrozumienie zawartości każdego zatwierdzenia.
Musisz mieć aktywną subskrypcję Narzędzia Copilot w usłudze GitHub i zainstalowane rozszerzenie czatu Copilot w usłudze GitHub. Kliknij dwukrotnie dowolne zatwierdzenie, aby otworzyć okienko Szczegóły zatwierdzenia w oknie Repozytorium Git. Następnie kliknij ikonę pióra "Wyjaśnij zatwierdzenie", aby uzyskać podsumowanie zmian obok kodu. Planujemy kontynuować ulepszanie tej funkcji, aby podzielić się swoją opinią tutaj.
Tworzenie aplikacji natywnych dla chmury za pomocą platformy .NET Aspire
Platforma .NET Aspire to zaopiniowany, gotowy do obsługi chmury stos w zakresie tworzenia obserwowalnych, gotowych do produkcji aplikacji rozproszonych. Platforma .NET Aspire jest dostarczana za pośrednictwem kolekcji pakietów NuGet, które obsługują konkretne problemy natywne dla chmury. Niezależnie od tego, czy tworzysz rozproszone, natywne dla chmury aplikacje przy użyciu konteneryzowanych zasobów, takich jak PostgreSQL i Redis, czy składników platformy Azure, takich jak Storage lub Service Bus, platforma .NET Aspire uprości środowisko programistyczne i zapewni większą widoczność w aplikacjach rozproszonych za pomocą takich funkcji, jak:
- Uruchamianie i debugowanie wielu projektów bez konieczności konfigurowania rozwiązania
- Wbudowana obsługa odporności protokołu HTTP, kontroli kondycji i biblioteki OpenTelemetry przy użyciu zestawu zaopiniowanych rozszerzeń i ustawień domyślnych
- Wygodne w przeglądarce widoki dzienników, metryk i rozproszonych śladów zasobów konteneryzowanych i projektów platformy .NET przy użyciu nowego środowiska uruchamiania pulpitu nawigacyjnego platformy .NET Aspire
- Nowa metodologia wdrażania utworzona na podstawie interfejsu wiersza polecenia dla deweloperów platformy Azure (AZD), dzięki czemu w większości przypadków będziesz mieć możliwość wdrażania z wieloma węzłami bez konieczności pisania własnego kodu infrastruktury
Debugowanie i diagnostyka
Wygenerowane warunki punktu przerwania copilot
Zwiększ szybkość debugowania dzięki sugestiom generowanym przez sztuczną inteligencję dla warunkowych punktów przerwania i punktów śledzenia. Copilot analizuje kod w celu zaproponowania inteligentnych wyrażeń dostosowanych do punktów przerwania, dzięki czemu debugowanie jest bardziej płynne.
Podczas konfigurowania warunkowego punktu przerwania lub punktu śledzenia i aktywowania wskaźnika myszy nad obszarem warunku w oknie ustawień narzędzie Copilot szybko prezentuje pomysły na wyrażenia generowane przez sztuczną inteligencję na podstawie kodu. Wybierz warunek, który najlepiej odpowiada Twoim potrzebom, i z łatwością umieść punkt przerwania lub punkt śledzenia.
Wizualizacja profilera licznika platformy .NET z nowymi narzędziami UpDown i ObservableCounter
Profiler licznika platformy .NET w programie Visual Studio wprowadza teraz obsługę dwóch innowacyjnych metryk: UpDown, umożliwiając śledzenie wartości w czasie rzeczywistym z przyrostowymi i dekrementacyjnymi zmianami oraz funkcją ObservableCounter, która autonomicznie zarządza zagregowanymi sumami, oferując dostosowywalne delegaty wywołania zwrotnego na potrzeby precyzyjnej kontroli. Na podanym zrzucie ekranu "total-hats" ilustruje licznik UpDown, podczas gdy wyrażenie "orders-pending" demonstruje obiekt ObservableCounter.
Ponadto zaimplementowaliśmy funkcję wysuwaną filtru, umożliwiając wygodne filtrowanie punktów danych na podstawie tagów. To dynamicznie dostosowuje zarówno widoki podsumowania, jak i pływaków zgodnie z zastosowanymi kombinacjami.
To ulepszenie znacznie zwiększa elastyczność, usprawniając monitorowanie wartości dynamicznych w projektach. Na przykład w przypadku tworzenia aplikacji internetowych licznik UpDown może monitorować interakcje użytkowników, takie jak widoki stron, a licznik obserwowalny optymalizuje zasoby serwera, efektywnie zarządzając sumami aktywnej sesji.
Usługa GC Insights w oknie pamięci zarządzanej
Karta Szczegółowe informacje o zarządzanym oknie pamięci obsługuje teraz usługę GC Insights. Ta funkcja zapewnia dokładniejsze zrozumienie wydajności aplikacji przez rzucanie światła na wystąpienia indukowanego odzyskiwania pamięci (GC). Te wystąpienia są zwykle uważane za niepożądane, ponieważ mogą utrudniać wydajność procesów, ponieważ obejmują one interwencję ręczną, a nie zezwalanie modułowi odśmiecania pamięci na autonomiczne zarządzanie alokacją pamięci. Ponadto usługa GC Insights oferuje możliwość analizowania tych wystąpień z oszacowaniami czasu, co pozwala lepiej zrozumieć wpływ wywołania GC na oś czasu wykonywania aplikacji.
Tworzenie warunkowych punktów przerwania i punktów śledzenia na podstawie wyrażeń
To uaktualnienie upraszcza debugowanie przy użyciu nowych opcji menu: "Wstaw warunkowy punkt przerwania" i "Wstaw punkt śledzenia". Teraz można bez wysiłku tworzyć punkty przerwania przy użyciu nazw właściwości lub pól i wartości z autos, ustawień lokalnych, okien kontrolnych lub etykietek danych. Ułatwia to debugowanie przepływów pracy, szczególnie w przypadku złożonych wyrażeń.
Upraszczanie badań użycia pamięci za pomocą narzędzia pamięci
Nowa funkcja "Ścieżka gorąca do katalogu głównego" poprawia analizę pamięci, wyszukując najbardziej prawdopodobną ścieżkę do katalogu głównego do obliczania całkowitego rozmiaru obiektu. Przekształca wykres sterty w drzewo, używając skrótów, takich jak ustalanie priorytetów najkrótszej ścieżki i unikanie ścieżek rowerowych do rzeczywistych korzeni. Ta funkcja jest doskonałym punktem wyjścia do badań pamięci, znanych jako "Ścieżka gorąca do katalogu głównego" na wykresie referencyjnym narzędzia Użycie pamięci. Ścieżka gorąca zostanie zauważona z czerwoną ikoną w drzewie poniżej.
Dołączanie do okna dialogowego procesu — zmiana
Okno dialogowe Dołączanie do procesu w programie Visual Studio zostało znacznie ulepszone, aby uzyskać lepszą funkcjonalność i łatwość obsługi użytkownika. Te aktualizacje obejmują bezproblemową integrację z motywami programu Visual Studio, bardziej oszczędność miejsca w widoku z etykietkami narzędzi dla informacji o połączeniu i ustawieniem połączenia lokalnego jako domyślnego w celu szybszego dostępu. Teraz można łatwo przełączać się między widokami drzewa i list, organizować procesy lepiej za pomocą zwijanych sekcji i wybierać typy kodu z uproszczonym polem kombi. Ponadto funkcja "Wybieranie/śledzenie okna" jest teraz łatwiejsza, umożliwiając śledzenie dwukierunkowe, wybieranie procesu wyróżnia okno i kliknięcie okna wybiera jego proces.
Instrumentacja docelowa dla pliku EXE
Narzędzie instrumentacji profilera wydajności umożliwia teraz profilowanie docelowe dla dowolnego pliku wykonywalnego (exe). Po wybraniu pliku exe zostanie wyświetlone okno dialogowe instrumentacji docelowej, podobne do profilowania projektu uruchamiania. To ulepszenie umożliwia skoncentrowaną analizę metryk wydajności dla określonych plików wykonywalnych. Ponadto można rozszerzyć zakres profilowania, włączając dodatkowe biblioteki linków dynamicznych (DLL) przy użyciu przycisku "Dodaj element", zwiększając analizę wydajności aplikacji.
Wydajność debugowania platformy Blazor dla niektórych projektów
Podczas kompilowania projektów platformy ASP.NET Core Blazor mogą wystąpić znaczne opóźnienia podczas uruchamiania debugowania w niektórych przypadkach. W tej wersji wprowadziliśmy zmiany, które powinny zapobiec tym opóźnieniom. Jeśli nie możesz uaktualnić do wersji 17.10 lub nowszej, istnieje obejście wymienione w witrynie Społeczność deweloperów dla wersji 17.9.
Anulowanie ładowania rozwiązania
Jeśli chcesz zatrzymać proces ładowania rozwiązania przed załadowaniem wszystkich projektów. Teraz możesz anulować operację i powrócić do pustego środowiska IDE.
Narzędzia programistyczne usługi Microsoft Teams (Teams Toolkit)
Zestaw narzędzi Teams zawiera teraz nowy plik projektu (ttkproj), który służy do organizowania wszystkich plików do zarządzania aplikacją usługi Teams. Utworzenie nowego projektu aplikacji Microsoft Teams spowoduje utworzenie rozwiązania z dwoma projektami. Zostanie wyświetlony projekt TeamsApp zawierający manifest aplikacji i inne pliki dla funkcji zestawu narzędzi teams wraz z innym projektem języka C# z przykładem kodu do implementowania funkcji aplikacji, takich jak bot konwersacyjny, karta itp.
Znajdziesz również następujące zmiany:
- Menu projektu Teams Toolkit jest teraz możliwe do odnalezienia w projekcie TeamsApp
- Obsługa funkcji > w wersji zapoznawczej umożliwia korzystanie z profilów uruchamiania wielu projektów, aby ułatwić rozpoczęcie debugowania w aplikacjach Teams, Outlook lub innych obsługiwanych platformach aplikacji Teams
Nowe ulepszenia obciążeń i szablonów WinUI
Wprowadzenie do winUI nigdy nie było łatwiejsze
Nowe obciążenie tworzenia aplikacji systemu Windows jest teraz dostępne dla deweloperów, którzy mogą zacząć pisać stylowe, nowoczesne i szybkie aplikacje WinUI przy użyciu platformy .NET. Po jednym kliknięciu wszystko jest gotowe do zainstalowania.
Jeśli chcesz napisać aplikację WinUI w języku C++, możesz wybrać składnik opcjonalny w ramach tego obciążenia.
Szybsze przechodzenie do interfejsu WinUI dzięki lepszym wyborom szablonów i nowym szablonom testów jednostkowych
Szablony WinUI otrzymały nową ikonę i zwiększenie priorytetu na liście wyboru nowego szablonu projektu, dzięki czemu będą one bardziej dostępne. Najbardziej popularne puste szablony aplikacji dla języków C# i C++ znajdują się w górnej części, dzięki czemu możesz przeskoczyć do kodu bez konieczności wyszukiwania ani przewijania. Dodaliśmy również całkiem nowe szablony testów jednostkowych żądanych przez społeczność dla interfejsu WinUI, aby ułatwić testowanie aplikacji.
Rozszerzalność
Teraz możesz użyć instalatora programu Visual Studio 2022 w wersji 17.10, aby wyeksportować zainstalowane rozszerzenia witryny Marketplace dla całego wystąpienia do pliku *.vsconfig. Ta nowa funkcja eksportu uzupełnia możliwość ładowania rozszerzeń programu Visual Studio określonych w pliku *.vsconfig dostarczonym w wersji 17.9. Jeśli masz jakiekolwiek opinie lub sugestie dotyczące tego środowiska, daj nam znać w naszej społeczności deweloperów.
Aby uzyskać więcej informacji na temat używania plików *.vsconfig, zapoznaj się z dokumentacją online.
Wskazówki dotyczące programowania w języku C# w plikach Razor
Teraz można włączyć wskazówki dotyczące nakładki dla kodu języka C# w plikach Razor (razor, cshtml). Wskazówki wbudowane wyświetlają nazwy parametrów literałów i wystąpień obiektów w tekście z kodem. Wskazówki dotyczące nakładek mogą również wyświetlać wskazówki dotyczące typów zmiennych z typami wnioskowanymi (tj. var
) i typami parametrów lambda. Tę funkcję można włączyć za pomocą narzędzia Opcje Edytor tekstu C# > Zaawansowane.> > >
Wyszukiwanie kodu i nawigacja
W wyszukiwaniu we wszystkich w jednym wprowadziliśmy pewne zmiany, aby uprościć interfejs użytkownika i zwiększyć czytelność. Te zmiany obejmują usunięcie wyróżniania dopasowań w zapytaniu, usunięcie paska stanu z liczbami każdego typu wyników oraz przeniesienie komunikatów o stanie do wiersza filtrów.
Poinformuj nas o tym, co myślisz w społeczności deweloperów.
Zwiększanie czytelności programu Visual Studio przy użyciu nowych opcji formatowania tekstu
W programie Visual Studio 2019 rozwiązaliśmy problem z obsługą czcionek kursywą, przekreśleniem i podkreślaniem jako dodatkowymi opcjami formatowania tekstu w środowisku IDE.
Aby użyć nowych opcji do spersonalizowania środowiska, przejdź do strony "Czcionki i kolory" w obszarze Narzędzia > Opcje > środowiska, w którym znajdziesz pola wyboru dla każdej z wymienionych wcześniej opcji.
Podgląd obrazu po najechaniu wskaźnikiem myszy
Każdy deweloper aplikacji internetowych, klasycznych lub mobilnych często pracuje z obrazami. Odwołujesz się do nich z języków C#, HTML, XAML, CSS, C++, VB, TypeScript, a nawet w komentarzach kodu. Niektóre obrazy są lokalne, a niektóre istnieją w trybie online lub w udziałach sieciowych, podczas gdy inne istnieją tylko jako ciągi zakodowane w formacie base64. Odwołujemy się do nich na wiele sposobów w kodzie, ale zawsze jako wartości ciągu, które nie pokazują nam, jak wygląda obraz. Aż do tej pory.
Dołączyliśmy etykietkę narzędzia edytora, która jest wyświetlana po umieszczeniu wskaźnika myszy na odwołaniu do obrazu w edytorze kodu. Etykietka narzędzia pokazuje obraz w oryginalnym rozmiarze, ale maksymalnie 500 pikseli szerokości i wysokości. Poniżej obrazu podglądu zobaczysz rozmiar w pikselach i rozmiar pliku w bajtach. Ta funkcja została opracowana w ścisłej współpracy ze społecznością programu Visual Studio. Dziękujemy.
Projektant out-of-process formularzy systemu Windows
Ulepszenia wydajności w projektancie poza procesem formularzy systemu Windows
Dzięki owocnej współpracy z kluczowym partnerem jesteśmy zachwyceni, aby ogłosić znaczne ulepszenia procesu serwera WinForms TypeResolutionService. Te ulepszenia przyniosły niezwykłe ulepszenia wydajności czasu projektowania, od 30% do imponujących 50% w typowych aplikacjach biznesowych. W szczególności te ulepszenia szczególnie świecą podczas scenariuszy, które wyzwalają ponowne uruchamianie procesu serwera i ponowne ładowanie projektanta, takie jak ponowne kompilowanie projektu lub korekty w odwołaniach projektu. W centrum tych ulepszeń wydajności leży nowy mechanizm zaimplementowany przez nasz zespół, priorytetując zestawy kluczowe dla obciążenia projektanta. Zachęcamy do zapoznania się ze zaktualizowanym projektantem i udostępnienia cennych opinii za pośrednictwem kanału opinii programu VS, abyśmy mogli nadal ulepszać wydajność projektanta WinForms.
SQL
Program SSDT jest obsługiwany w programie Visual Studio dla usługi ARM64
Teraz możesz tworzyć projekty bazy danych w programie Visual Studio dla usługi ARM64. Niektóre z kluczowych funkcji narzędzi SSDT dostępnych w tej wersji to:
- Projekty bazy danych (otwarte, kompilacja, publikowanie)
- Porównanie schematów
- Porównanie danych
- Edytor zapytań
- Projektant tabel
- Edytor właściwości bazy danych
- Refaktoryzacja obiektów
Niektóre ograniczenia tej wersji są następujące:
- Debuger
- IntelliSense
- Tworzenie bazy danych na komputerze lokalnym przy użyciu bazy danych localdb
Obsługa funkcji MCD (dystrybucja wielokolumna) w programie SSDT
Użytkownicy będą mogli teraz ustawić poziom zgodności dw.
- Dodaliśmy nową opcję bazy danych w ustawieniach bazy danych na karcie "Operacyjne". Jest ona nazwana jako "Poziom zgodności DW".
- Możliwe wartości to Auto|10|20|30|40|50|9000 i są prawidłowe tylko dla elementu docelowego — Microsoft Azure SQL Data Warehouse
Aktualizacje programu Visual Studio będą teraz zawierać zalecane składniki
Obciążenia wybierane podczas instalacji są dostarczane z wymaganymi i zalecanymi składnikami. Wymagane składniki są niezbędne dla funkcjonalności obciążenia, podczas gdy zalecane składniki, choć opcjonalne, odgrywają kluczową rolę w maksymalizacji jego potencjału.
Od czasu wydania programu Visual Studio 2017 ciągłe ulepszenia zostały zintegrowane ze środowiskiem IDE za pomocą aktualizacji wersji pomocniczej. Te ulepszenia zwiększają produktywność i rozszerzają możliwości programistyczne, bezproblemowo zintegrowane zarówno z istniejącymi składnikami, jak i nowymi. Jednak wielu użytkowników może nie być świadomych tych nowych zalecanych składników, ponieważ są one aktualizowane przyrostowo. Aby rozwiązać ten problem, począwszy od wersji 17.10 P1, program Visual Studio automatycznie zainstaluje te nowe zalecane składniki podczas aktualizacji. W szczególności zalecane składniki zainstalowane podczas aktualizacji są przeznaczone tylko dla obciążeń wybranych przez użytkowników.
Podobnie podczas aktualizacji ta funkcja gwarantuje, że nie są zainstalowane żadne nowe obciążenia. Ponadto wszystkie istniejące zalecane składniki, które użytkownicy nie zdecydowali się zainstalować, pozostają nienaruszone.
Jeśli nie chcesz używać tej funkcji, możesz łatwo usunąć jej zaznaczenie w oknie dialogowym Ustawienia aktualizacji w Instalatorze. Zalecane składniki można również usunąć, jeśli nie są już potrzebne, modyfikując instalację.
Aby uzyskać listę wszystkich składników programu Visual Studio, w tym zalecanych składników, zobacz Identyfikatory składników programu Visual Studio
Ulepszone wykrywanie wpływu wydajności emulatora systemu Android
Program Visual Studio sprawdzi przyspieszanie sprzętowe podczas próby uruchomienia emulatora systemu Android i wyświetli przydatne okna dialogowe wyjaśniające potencjalne skutki wydajności. Jeśli maszyna nie jest skonfigurowana lub nie obsługuje przyspieszania sprzętowego za pomocą platformy hypervisor systemu Windows (WHPX), sterownik funkcji hypervisor emulatora systemu Android (AEHD) jest teraz wymagany. Program Intel Hardware Accelerated Execution Manager (HAXM) jest przestarzały z poziomu interfejsu API emulatora systemu Android na poziomie 33 i nowszym i został zastąpiony przez dysk AEHD na procesorach Intel.
Aby uzyskać więcej informacji, zobacz Jak włączyć przyspieszanie sprzętowe za pomocą emulatorów systemu Android (Hyper-V i AEHD)
Łączenie elementów roboczych z żądaniami ściągnięcia
Jedno żądanie od użytkowników usługi Azure DevOps podczas tworzenia żądania ściągnięcia w programie Visual Studio umożliwiało łączenie elementów roboczych. Teraz możesz użyć sekcji Powiązany element roboczy, aby wyświetlić wszystkie elementy robocze, do których odwołujesz się w opisie żądania ściągnięcia i połączyć elementy robocze z żądaniem ściągnięcia w usłudze Azure DevOps.
C++
- Dodaliśmy obsługę przypinania obiektów docelowych narzędzia CMake w widoku obiektów docelowych narzędzia CMake. Istnieje teraz folder najwyższego poziomu dla przypiętych elementów docelowych. Możesz przypiąć dowolne elementy docelowe, klikając prawym przyciskiem myszy i wybierając
Pin
opcję w menu kontekstowym.
Możesz również odepchnąć dowolny element docelowy w folderze Przypięte elementy docelowe, wybierając Unpin
pozycję .
Zestaw narzędzi MSVC zwiększy numer wersji pomocniczej z
19.39
programu (VS 2022 w wersji 17.9) do19.40
(VS 2022 w wersji 17.10). Zestaw narzędzi MSVC będzie w wersji 19.40.33521.0 w wersji zapoznawczej 1. Aby uzyskać więcej informacji, zobacz wpis w blogu programu VS 2022 v17.10 w zestawie narzędzi MSVC w wersji 14.40.Teraz możesz użyć funkcji Build Insights, aby wyświetlić informacje o tworzeniu wystąpienia szablonu. Kolekcja wystąpień szablonu musi być aktywowana w obszarze Narzędzia > Opcje > kompilacji Szczegółowe informacje.
Dodaliśmy dodatkowe makra aparatu Unreal Engine do wcięcia zgodnie ze stylem kodu UE.
Teraz możesz zachować naszą wtyczkę Unreal Engine wymaganą dla adaptera testowego aparatu Unreal Engine uruchomionego w tle, co znacznie zmniejsza koszty uruchamiania. Jest to funkcja, którą można aktywować za pomocą opcji > narzędzia > Unreal Engine.
Wizualizacja układu pamięci języka C++
Program Visual Studio ma teraz funkcję wizualizacji układu pamięci języka C++. Ta funkcja wyświetla układ pamięci klas, struktur i związków w edytorze, eliminując konieczność kompilacji. Po umieszczeniu wskaźnika myszy na typach zostanie wyświetlony link "Układ pamięci". Kliknięcie tego linku spowoduje otwarcie okna z układem pamięci wybranego typu ze szczegółami dotyczącymi rozmiaru i przesunięcia poszczególnych typów danych.
Izolacja aplikacji Win32
Przełomowa funkcja zabezpieczeń, która zwiększa prywatność użytkowników i integralność aplikacji. Oparta na podstawach aplikacji AppContainers izolacja aplikacji Win32 zapewnia, że aplikacje są w trybie piaskownicy, zapewniając bezpieczne środowisko, które ogranicza wpływ potencjalnych kompromisów.
Deweloperzy mogą teraz łatwo izolować aplikacje w programie Visual Studio, usprawniając proces i poprawiając ogólny stan zabezpieczeń swoich projektów. Możesz bezpośrednio współpracować ze społecznością deweloperów i przekazać opinię na temat nowych funkcji i ulepszeń.
Znane problemy
- Użytkownicy, którzy mają zainstalowane oprogramowanie do zarządzania uprawnieniami z usługi Delinea, mogą napotkać problemy z uruchamianiem programu Visual Studio. Delinea zna ten problem i rozwiązał go. Skontaktuj się z nimi, https://delinea.com/support aby uzyskać instrukcje dotyczące rozwiązywania tego problemu.
- Okno dialogowe kontroli źródła — zobacz bilet , aby obejść ten problem, aby uniknąć wyświetlenia okna dialogowego "Nie można odnaleźć dostawcy kontroli źródła skojarzonego z tym rozwiązaniem".
- Użytkownicy języka C++ korzystający z platformy UWP mogą napotkać błąd
Could not find SDK "Microsoft.VCLibs.Desktop, Version=14.0"
kompilacji z powodu brakuC:\Program Files (x86)\Microsoft SDKs\Windows Kits\10\ExtensionSDKs\Microsoft.VCLibs.Desktop
folderu. Zobacz bilet, aby uzyskać szczegółowe informacje i obejścia. Ten problem jest priorytetowy. (zaktualizowano 29 maja 2024 r.: Jest to naprawione w wersji 17.10.1). - Użytkownicy języka C++ tworzący zarządzane biblioteki MFC DLL mogą napotkać błąd
error LNK2001: unresolved external symbol "public: __cdecl PostDllMain::PostDllMain(void)"
kompilacji. Zobacz bilet, aby uzyskać szczegółowe informacje i obejścia. Ten problem jest priorytetowy. (zaktualizowano 29 maja 2024 r.: Jest to naprawione w wersji 17.10.1). - Optymalizacja w kompilatorze języka C# prowadzi do porównań między liczbami dziesiętnym? wartość o wartości null i dziesiętnej, która jest niepoprawnie uznawana za równą 0,00 m. Dodatkowe szczegóły są dostępne w repozytorium kompilatora .NET.
- Ostatnia aktualizacja w bazowym składniku systemu Windows spowodowała niezgodną zmianę w oknie Narzędzia diagnostyczne, które z kolei ma wpływ na narzędzia profilera. Ma to wpływ na wszystkie wersje programu Visual Studio 2022. Dodatkowe szczegóły i najnowsze aktualizacje można przejrzeć w witrynie Społeczności deweloperów.
Uwaga
Ta aktualizacja może obejmować nowe oprogramowanie firmy Microsoft lub innej firmy, które jest licencjonowane oddzielnie, zgodnie z opisem w informacjach innych firm lub w towarzyszącej mu licencji.
Opinie i sugestie
Chcemy poznać Twoje zdanie! Możesz zgłosić problem lub zasugerować funkcję przy użyciu ikony Wyślij opinię w prawym górnym rogu instalatora lub środowiska IDE programu Visual Studio albo w obszarze Wyślij opinię w Pomocy.> Problemy można śledzić przy użyciu społeczności deweloperów programu Visual Studio, w której można dodawać komentarze lub znajdować rozwiązania. Możesz też uzyskać bezpłatną pomoc dotyczącą instalacji za pośrednictwem naszej pomocy technicznej przez czat na żywo.
Blogi
Skorzystaj ze szczegółowych informacji i zaleceń dostępnych w witrynie blogów dotyczących narzędzi programistycznych, aby być na bieżąco ze wszystkimi nowymi wersjami i zyskać dostęp do szczegółowych wpisów dotyczących szerokiego zakresu funkcji.