Visual Studio IconInformacje o wersji 15.7 programu Visual Studio 2017


Społeczność deweloperów | Wymagania systemowe | Zgodność | Kod dystrybucyjny | Postanowienia licencyjne | Blogi | Znane problemy



Uwaga

To nie jest najnowsza wersja programu Visual Studio. Aby pobrać najnowszą wersję, odwiedź witrynę programu Visual Studio .


Ramy czasowe pomocy technicznej

Ta wersja nie jest już obsługiwana. Aby uzyskać więcej informacji na temat obsługi programu Visual Studio, zapoznaj się z zasadami pomocy technicznej dla programu Visual Studio 2017.

Zapoznaj się z najnowszą wersją informacji o wersji lub odwiedź witrynę programu Visual Studio , aby pobrać najnowszą obsługiwaną wersję programu Visual Studio 2017.

Visual Studio Blog

Blog dotyczący programu Visual Studio to oficjalne źródło informacji o produkcie pochodzących od zespołu inżynierów ds. programu Visual Studio. Szczegółowe informacje na temat wydań programu Visual Studio 15.7 można znaleźć w następujących wpisach:

Wydania wersji 15.7 programu Visual Studio 2017


Ważne

Powiadomienie o biuletynie zabezpieczeń programu Visual Studio 2017 w wersji 15.7


Podsumowanie istotnych nowych funkcji w wersji 15.7

Najważniejsze problemy rozwiązane w wersji 15.7

Są to problemy zgłaszane przez klientów, rozwiązane w wersji 15.7:

Zobacz wszystkie problemy zgłaszane przez klientów, które zostały rozwiązane w programie Visual Studio 2017 w wersji 15.7.

The Developer Community Portal


Szczegóły nowości w wersji 15.7

Release Notes IconVisual Studio 2017, wersja 15.7.0

wydana 7 maja 2018 r.

Nowe funkcje w wersji 15.7

Wydajność

  • W tej wersji poprawiliśmy czas ładowania rozwiązań dla projektów języka C# i Visual Basic średnio o 20%.
  • Dla dużych projektów programu .NET Core skróciliśmy czas ładowania funkcji IntelliSense o 25%.
  • Podczas przełączania gałęzi w usłudze Git modalne okno dialogowe postępu zostało usunięte, gdy rozwiązania i projekty nie muszą zostać ponownie załadowane.

Instalowanie programu Visual Studio

  • Okno dialogowe aktualizacji udostępnia więcej szczegółowych informacji o aktualizacji, takich jak nowości, rozmiar pobierania i najnowsza wersja aktualizacji.
  • Ulepszona funkcja zapisywania: przed aktualizacją programu Visual Studio wszystkie oczekujące zmiany będą najpierw zapisywane lokalnie przed uruchomieniem aktualizacji. W oknie dialogowym aktualizacji będzie widoczny przycisk Zapisz wszystko i zaktualizuj zamiast Zaktualizuj teraz.
  • Zmniejszyliśmy rozmiar instalacji na dysku systemowym przez przeniesienie pamięci podręcznej pobierania, składników udostępnionych oraz niektórych zestawów SDK i narzędzi na inne dyski (rysunek 1).
Install Locations
(Rysunek 1) Wybieranie lokalizacji instalacji

Istnieją trzy lokalizacje, którymi można zarządzać, i lokalizacje te można ustawić tylko przy pierwszej instalacji:

  • Główny produkt Visual Studio: ta lokalizacja przeznaczona jest na pliki specyficzne dla wersji programu Visual Studio wybranej do zainstalowania.
  • Pamięć podręczna pobierania: do tej lokalizacji będą pobierane pliki instalacyjne i manifesty. Jeśli zdecydujesz się nie zachowywać pamięci podręcznej pobierania przez usunięcie zaznaczenia pola wyboru, pliki zostaną usunięte po ukończeniu instalacji.
  • Składniki udostępnione, narzędzia i zestawy SDK: ta lokalizacja jest przeznaczona na pliki, które są współużytkowane przez instalacje programu Visual Studio istniejące obok siebie.

Uwaga

Na tym dysku nie będą instalowane narzędzia i zestawy SDK, które mają różne reguły dotyczące miejsca instalacji. Pierwszeństwo mają reguły specyficzne dla narzędzia/zestawu SDK.

Uwaga

Użytkownicy mogą wyłączyć pamięć podręczną pakietów i ustawić lokalizację.

Visual Studio IDE

Okno dialogowe (rysunek 2) wskazujące, które długotrwałe operacje zajmują program Visual Studio, jest teraz dostępne dla czytników zawartości ekranu (na przykład NVDA, Narrator itp.). Gdy okno dialogowe jest wyświetlane przez program Visual Studio, czytnik zawartości ekranu odtwarza podpowiedź dźwiękową wskazującą, że na ekranie jest widoczna nowa informacja. Użytkownicy mogą przeczytać zawartość okna dialogowego lub użyć przycisku Anuluj, gdy będzie dostępny, wywołując polecenie Zmień widok w programie Narrator.

Wait dialog
(Rysunek 2) Okno dialogowe ładowania jest teraz dostępne dla czytnika zawartości ekranu

Uwaga

Do pełnej obsługi programu Narrator wymagane są kompilacje Windows 10 Redstone 4 (RS4).

Ulepszenia języka Visual C++

  • Ta wersja zawiera poprawkę luki w zabezpieczeniach plików PDB polegającej na ujawnianiu informacji lokalnych, zgodnie z opisem we wpisie CVE-2018-1037.
  • C5045 jest nową diagnostyką kompilatora umożliwiającą zobaczenie wzorców kodu, w których kompilator wstawiłby zabezpieczenie przed luką Spectre.
  • Instalacja narzędzia CMake dostarczanego w pakiecie z programem Visual Studio została uaktualniona z wersji z 3.10 do wersji 3.11.
  • Projekty narzędzia CMake obsługują analizę statyczną kodu w języku C++, np. VCXProj.
  • Program MSVC obsługuje funkcję P0426R1 „constexpr dla std::char_traits” języka C++17, co sprawia, że element std::string_view jest dużo bardziej użyteczny w czasie kompilacji.
  • Użyj funkcji CodeLens nad każdym z testów jednostkowych w celu uruchamiania, debugowania i wyświetlania stanu testu(rysunek 3).
Use CodeLens above each of your unit tests
(Rysunek 3) Używanie funkcji CodeLens nad każdym z testów jednostkowych
  • Zaktualizowaliśmy narzędzia programistyczne programu Visual Studio dla systemu iOS i języka C++ do pracy ze środowiskiem Xcode 9.
  • Dodaliśmy opcję /analyze:ruleset do programu cl.exe na potrzeby filtrowania ostrzeżeń w narzędziach analizy kodu w języku C++ na podstawie konfiguracji zestawu reguł. To daje w efekcie podobne działanie samodzielnych wywołań kompilatora i środowiska IDE oraz zwiększenie wydajności przez uruchamianie wyłącznie reguł wymienionych w zestawie reguł.
  • Dziedziczenie konstruktora działa teraz tak samo jak dziedziczenie każdej innej składowej klasy bazowej. Wcześniej było to robione przez zadeklarowanie nowego konstruktora, który delegował do oryginalnego. Dzięki tej zmianie konstruktory klasy bazowej są widoczne w klasie pochodnej, tak jakby były konstruktorami klasy pochodnej, co poprawia spójność w języku C++.
  • Szablony, które są zaprojektowane do przyjmowania dowolnego typu jako parametru bez typu, mogą teraz używać słowa kluczowego auto na liście parametrów szablonu. Pozwala to na używanie w operacjach tworzenia wystąpień dowolnego typu zamiast konieczności określania i dostarczania typu parametru szablonu w punkcie tworzenia wystąpienia.
  • Element std::launder jest teraz obsługiwany.
  • Dwufazowe wyszukiwanie nazw działa poprawnie prawie we wszystkich przypadkach. Niektóre skrajne przypadki, takie jak wywołania przeciążonych operatorów przez funkcje niezależne, zostaną naprawione w przyszłej poprawce.
  • Zestaw narzędzi kompilatora MSVC jest zgodny ze standardem C++ 17. Podczas kompilowania z użyciem przełącznika /Zc:__cplusplus wartość makra __cplusplus odzwierciedla prawidłowe numery wersji standardu.
  • Środowisko uruchomieniowe języka Visual C++ obsługuje środki zaradcze dla wariantu 1 luki w zabezpieczeniach Spectre. Zestaw narzędzi zawiera biblioteki DLL w wersjach z zastosowanymi środkami zaradczymi i bez nich. Włączenie funkcji Eliminacja zagrożeń Spectre na stronie właściwości Generowanie kodu spowoduje także łączenie z wersją biblioteki DLL z zastosowanymi środkami zaradczymi. Więcej informacji na temat ograniczania ryzyka w związku z luką w zabezpieczeniach Spectre można znaleźć na blogu zespołu języka Visual C++.
  • Włączono w kompilatorze obsługę ograniczania ryzyka w związku z luką w zabezpieczeniach Spectre w niezoptymalizowanych kompilacjach (/Od).
  • Przełącznik /Zf jest teraz włączony domyślnie, co umożliwia szybsze generowanie plików PDB podczas korzystania z wielu procesów kompilacji.
  • Znacznie ulepszyliśmy generowanie kodu dla instrukcji /await. Ponownie wdrożyliśmy koprocedury w generatorze kodu w celu poprawy niezawodności, usuwając ogromną większość usterek.
  • Widok elementów docelowych narzędzia CMake udostępnia alternatywny sposób wyświetlania źródła projektu narzędzia CMake w Eksploratorze rozwiązań. Zamiast widoku bazującego na folderach organizuje ono kod w postaci pojedynczych elementów docelowych narzędzia CMake (rysunek 4). Organizacja jest podobna do organizacji plików projektu i rozwiązania tworzonych przez generator „Visual Studio” narzędzia CMake.
CMake Targets View
(Rysunek 4) Widok elementów docelowych narzędzia CMake
  • Pliki źródłowe (cpp) należące do projektów narzędzia CMake można kompilować oddzielnie za pośrednictwem menu narzędzia CMake lub przez kliknięcie prawym przyciskiem myszy pliku źródłowego w Eksploratorze rozwiązań.
  • Nieznane makra, które powodują błędy podczas analizowania tagów, są teraz podkreślane zielonymi zygzakami. Dostępna jest szybka akcja do automatycznego dodawania makra do pliku podpowiedzi języka C++, która rozwiązuje ten problem. Wszystkie błędy analizowania tagów w rozwiązaniu lub folderze można wyświetlić, klikając pozycję Wyświetl błędy parsera tagów w menu Projekt.
  • Nagłówki do ścieżki dołączania w pliku CppProperties.json można dodawać za pomocą szybkich akcji w obszarze Otwórz folder.
  • Nagłówki z systemów typu Linux i Unix są teraz automatycznie pobierane do użycia przez funkcję IntelliSense w systemie Windows. Są one również używane do zapewniania lepszego działania funkcji IntelliSense przy programowaniu natywnego oprogramowania platformy Linux.
  • Dodaliśmy pięć nowych reguł wymuszających elementy zpodstawowych wytycznych dotyczących języka C++ w zakresie stosowania biblioteki Guidelines Support Library.
  • Zezwalamy na publiczne klasy bazowe w typach agregatów, dzięki czemu można je inicjować przy użyciu składni inicjowania agregacji bez pisania konstruktorów standardowych. Na liście inicjatora w nawiasach klamrowych klasy bazowe są inicjowane jako pierwsze, a następnie inicjowane są składowe danych.
  • Rozszerzono wnioskowanie argumentów szablonu dla funkcji na konstruktory klas szablonów. Podczas tworzenia szablonu klasy nie trzeba już określać argumentów.
  • W języku C++17 zmianie uległa definicja konwersji kwalifikacji. Wcześniej były one dozwolone między wskaźnikami wielopoziomowymi i wskaźnikami mieszanymi w taki sposób, że kwalifikatory często mogły być dodawane na poziomach innych niż pierwszy. Jednak to nie miało podobnego zastosowania do tablic.
  • Ponownie zdefiniowano kolejność obliczania wyrażeń dla głównych operatorów języka C++, która wcześniej zależała od szczegółów implementacji kompilatora, na przykład dostęp do składowych, przypisania i indeksowanie tablic.
  • Rozszerzono deklarację using o obsługę semantyki rozszerzania pakietów dla składowych klasy bazowej ze zmienną liczbą argumentów, których następnie można użyć w klasie pochodnej.
  • Ukończyliśmy pełną implementację funkcji SFINAE dla wyrażeń i wprowadziliśmy odpowiednie zmiany do standardowej biblioteki szablonów.
  • Zaimplementowaliśmy algorytmy równoległe zgodne ze standardem ISO C++17. Zobacz plik źródłowy znajdujący się w lokalizacji [VSInstallDir]\VC\Tools\MSVC\<ver>\include\yvals.h w celu uzyskania dodatkowych szczegółów.
  • W trybie /std:c++17 poziom ostrzeżenia C4834 (odrzucanie zwracanej wartości funkcji z atrybutem „nodiscard”) został podniesiony z W3 na W1. Ponadto kompilator może teraz wywnioskować typ argumentu dla argumentu szablonu bez typu, który jest zadeklarowany z opcją auto.
  • Debugowanie dużych rozwiązań przy użyciu plików PDB z poleceniem/Debug:fastlink działa bardziej niezawodnie. Zmiany w pliku PDB umożliwiły zmniejszenie opóźnienia i zmniejszenie użycia pamięci sterty o 30% w debugerze programu VS.
  • Podstawowe sprawdzanie języka C++ jest teraz częścią domyślnego zestawu narzędzi do analizy kodu natywnego. Za każdym razem, gdy dla projektu wykonywana jest analiza kodu, oprócz domyślnych zalecanych reguł włączany jest podzbiór reguł podstawowego sprawdzania języka C++.
  • Dodaliśmy obsługę kompilacji równoległej dla projektów systemu Linux, która może znacznie poprawić czasy kompilacji. Można to włączyć za pomocą stron > właściwości C/C++ > Maksymalna liczba zadań kompilacji równoległej.
  • Została dodana właściwość projektu systemu Linux „Katalogi dołączania projektu publicznego” w celu poprawienia użycia dołączeń z odwołań między projektami w rozwiązaniach systemu Linux.
  • Dodaliśmy obsługę formatu ClangFormat dla deweloperów języka C++ w środowisku IDE. Podobnie jak w przypadku formatu EditorConfig, formatu ClangFormat można używać do automatycznego stosowania stylu i formatowania do kodu podczas wpisywania. Styl i formatowanie można wymusić w całym zespole deweloperów.

Kompilator języka C#

Oprócz poprawek błędów w tej wersji pojawiły się następujące funkcje języka C# 7.3:

Python

  • Możesz uruchomić aplikację MyPy w projekcie, klikając prawym przyciskiem myszy projekt i wybierając pozycję Python > MyPy. Narzędzie MyPy będzie sprawdzać Twój kod pod kątem wskazówek dotyczących typów, a wszelkie wykryte błędy typów będą pokazywane na liście błędów.
  • Możesz tworzyć środowiska Conda i używać ich, a także zarządzać pakietami dla środowisk Conda przy użyciu narzędzia pip lub Conda.
  • Środowisko Anaconda w wersji 5.1.0 jest teraz dostępne w Instalatorze programu Visual Studio i jest instalowane domyślnie po wybraniu pakietu roboczego Nauka o danych.
  • Dodaliśmy możliwość skorzystania z wersji ptvsd 4.0 debugera języka Python opartego na popularnym debugerze typu open source o nazwie pydevd. Opcja zapewnia szybszą wydajność debugowania dla narzędzia applicationscan i można je włączyć, zaznaczając pozycję Użyj eksperymentalnego debugera w obszarze Narzędzia > Opcje języka > Python > Eksperymentalne.
  • Zapoznaj się z wpisem w blogu Python in Visual Studio 15.7 (Język Python w programie Visual Studio 15.7), aby dowiedzieć się więcej na temat korzystania z debugera, środowiska Conda i narzędzia MyPy oraz uzyskać wskazówki dotyczące typów.

Visual Studio Tools dla programu Xamarin

Ta wersja zawiera rozszerzenia Xamarin.Android 8.3 i Xamarin.iOS 11.10.

Automatyczne zarządzanie zestawem Android SDK

Po załadowaniu projektu Xamarin.Android program Visual Studio może stwierdzić, czy poziom interfejsu API systemu Android używany przez projekt istnieje na Twojej maszynie i w razie potrzeby automatycznie zainstalować go w tle. Aby włączyć tę funkcję, przejdź do pozycji Narzędzia > Opcje > platformy Xamarin > android Ustawienia > automatyczne instalowanie zestawów SDK systemu Android.

Ulepszona funkcja IntelliSense języka XAML

Deweloperzy platformy Xamarin.Forms korzystający z programu Visual Studio 2017 wersji 15.7 zauważą znacznie lepsze działanie funkcji IntelliSense (rysunek 5). Środowisko edytowania kodu XAML na platformie Xamarin.Forms jest teraz wspierane przez ten sam aparat IntelliSense, który obsługuje platformy WPF i UWP. Udostępnia to wiele udoskonaleń deweloperom, w tym lepsze dopasowywanie, sugestie z żarówką, nawigację po kodzie, linting, uzupełnianie zasobów i uzupełnianie rozszerzenia znaczników.

Xamarin.Forms XAML editing experience
(Rysunek 5) Środowisko edycji kodu XAML na platformie Xamarin.Forms
Ulepszenia narzędzi dla warunkowego kodu XAML

Edytor XAML udostępnia funkcję IntelliSense do tworzenia warunkowego kodu XAML. Podczas korzystania z typu, którego nie ma w docelowej minimalnej wersji aplikacji, edytor XAML teraz nie tylko ostrzega, ale także zapewnia kilka opcji rozwiązania problemu.

Automatyczna aprowizacja systemu iOS

Ułatwiliśmy aprowizowanie urządzeń z systemem iOS na potrzeby programowania (rysunek 6). W programie Visual Studio 2017 w wersji 15.7 istnieje usprawniona funkcja do zażądania certyfikatu deweloperskiego, wygenerowania klucza podpisywania, dodania urządzenia w Centrum deweloperów i utworzenia profilu aprowizacji — wszystko jednym kliknięciem przycisku. Cała praca związana z aprowizowaniem urządzenia z systemem iOS jest wykonywana automatycznie w mniej niż 30 sekund.

iOS & Android Project Templates Image
(Rysunek 6) Aprowizowanie aplikacji systemu iOS jest teraz prostsze dzięki funkcji automatycznej aprowizacji systemu iOS.
Zarządzanie zestawem ANDROID SDK

Ustalenie, jakie zestawy Android SDK należy zainstalować w celu programowania aplikacji mobilnych, może być czasochłonne. W programie Visual Studio 2017 w wersji 15.7 dodano nowego menedżera zestawów Android SDK, który eliminuje zgadywanie przy instalowaniu zestawów Android SDK. Po otwarciu projektu, dla którego nie zainstalowano zestawów SDK potrzebnych do jego kompilacji, zostanie wyświetlone powiadomienie ułatwiające pobranie wymaganych zestawów SDK. Po kliknięciu pozycji Pobierz i zainstaluj oraz zaakceptowaniu odpowiedniej umowy licencyjnej poprawny zestaw SDK zostanie automatycznie zainstalowany w tle.

Nowe szablony projektów systemu iOS i Android

Bez względu na to, czy jesteś nowym, czy doświadczonym deweloperem platformy Xamarin, szablony projektów są ważną częścią procesu tworzenia aplikacji. Powinny być łatwe do znalezienia i od początku ukierunkowane na powodzenie (rysunek 7). W tej wersji całkowicie przebudowaliśmy nasze szablony projektów natywnych dla systemów Android i iOS, aby można je było łatwiej odnajdywać i aby obsługiwały nowoczesne wzorce nawigacji, takie jak okna wysuwane czy karty na dole.

iOS & Android Project Templates
(Rysunek 7) Łatwe do znalezienia i skonfigurowania szablony projektów dla systemów iOS i Android
Ulepszenia dotyczące instalacji

Instalator programu Visual Studio jest dostarczany ze zaktualizowaną konfiguracją zestawu Android SDK, w tym interfejsem Android API 27 i narzędziami Android SDK Tools 26. Obejmuje to obsługę szybkiego rozruchu, który pozwala uruchamiać emulator systemu Android w mniej niż 5 sekund.

Ponadto uwzględniamy program Android Device Manager jako część pakietu roboczego Opracowywanie aplikacji mobilnych za pomocą środowiska .NET, aby umożliwić łatwe tworzenie, edytowanie i usuwanie emulatorów.

Ulepszenia produktywności platformy .NET

  • Użyj szybkich akcji i refaktoryzacji (Ctrl+.), aby:
    • Konwertować pętle for na foreach i odwrotnie.
    • Tworzyć pola prywatne readonly.
  • Funkcja Przejdź do definicji (F12) jest teraz obsługiwana dla klauzul zapytań LINQ i dekonstrukcji.
  • Użyj klawiszy Ctrl+, aby przełączać się między var i jawnym typem, niezależnie od preferencji stylu kodu.
  • Funkcja Szybkie informacje przedstawia przechwycone dane wyrażeń lambda i funkcji lokalnych, dzięki czemu można zobaczyć, jakie zmienne są w zakresie.
  • Refaktoryzacja zmiany podpisu (Ctrl+. przy podpisie) działa w funkcjach lokalnych.
  • Pliki projektu platformy .NET Core możesz edytować w miejscu, więc otwieranie folderu zawierającego, przywracanie kart i inne funkcje edytora są w pełni obsługiwane. Zmiany w środowisku IDE, takie jak dodanie połączonego pliku, zostaną scalone z niezapisanymi zmianami w edytorze.

Testowanie

  • Funkcja Live Unit Testing działa z osadzonymi plikami PDB i plikami PDB z parametrem /deterministic.
  • Dodaliśmy obsługę funkcji Live Unit Testing dla projektów, które używają zestawów odwołań.
  • Eksplorator testów ma więcej responsywnych ikon podczas przebiegów testów. Gdy przebieg testu jest w toku, obok aktualnie wykonywanych testów widoczny jest pierścień postępu, a obok testów oczekujących na wykonanie widać ikonę zegara.

Narzędzia sieci Web

  • Szablony projektów aplikacji internetowych platformy ASP.NET zostały odświeżone przy użyciu nowszych wersji pakietów zależnych.
  • Swoje niekonteneryzowane aplikacje możesz publikować w usłudze Azure App Service w systemie Linux.
  • Link do otwierania usługi Azure App Service w programie Cloud Explorer z poziomu strony Podsumowanie publikowania.
  • Obsługiwane jest publikowanie aplikacji zależnych od platformy .NET Core i aplikacji niezależnych.
  • Obsługa publikowania aplikacji w języku F# do usługi App Service i folderu.
  • Dodaliśmy obsługę hostowania aplikacji platformy ASP.NET Core bezpośrednio w procesie programu IIS Express.
  • Podczas publikowania w nowej usłudze Azure App Service możesz utworzyć konto magazynu i podać nazwę parametrów połączenia do przechowywania w ustawieniach usługi App Service.
  • Ulepszyliśmy obsługę protokołu Kestrel HTTPS podczas debugowania.
  • Aplikacje platformy ASP.NET Core obsługują wiele wartości rozdzielonych średnikami w polu „Adres URL aplikacji” we właściwościach projektu. Gdy w tym polu znajduje się wiele adresów URL, pierwszy z nich jest używany do uruchomienia przeglądarki.
  • Nowy generator szkieletu o nazwie „Tożsamość” jest dostępny za pośrednictwem wiersza polecenia (obsługa graficznego interfejsu użytkownika zostanie dodana wkrótce). Dodaje on interfejs użytkownika zarządzania tożsamościami do aplikacji platformy ASP.NET Core 2.1.
  • Projekty platform ASP.NET i ASP.NET Core mogą tworzyć i kojarzyć magazyny usługi Azure Key Vault z ich aplikacjami internetowymi w obrębie środowiska IDE przez skonfigurowanie usługi połączonej „Key Vault”.
  • Gdy aplikacja ASP.NET lub ASP.NET Core zależy od usługi Azure Key Vault, na liście błędów pojawia się błąd, jeśli aplikacja nie może uzyskać dostępu do tej usługi Key Vault w czasie wykonywania z komputera dewelopera, biorąc pod uwagę konto wybrane w obszarze Narzędzia > Opcje > uwierzytelniania usługi platformy Azure. Skraca to czas do odnalezienia i usunięcia problemu z uprawnieniami lub kontem i pozwala zapobiec awarii aplikacji w czasie wykonywania.
  • Gdy aplikacja internetowa korzysta z usługi KeyVault, do której wybrane konto użytkownika usługi ASAL nie ma dostępu, teraz na liście błędów pojawi się ostrzeżenie.

Visual Studio 2017 Build Tools

Obsługa platformy Azure, platformy uniwersalnej systemu Windows i innych obciążeń

Narzędzia Visual Studio 2017 Build Tools obsługują kompilację z poziomu wiersza polecenia dla większości projektów programu Visual Studio. Obsługiwane projekty obejmują: ASP.NET, Azure, aplikacje klasyczne w języku C++, ClickOnce, kontenery, .NET Core, .NET Desktop, Node.js, Office i SharePoint, Python, TypeScript, testy jednostkowe, UWP, WCF i Xamarin. Oczekujemy, że obsługa języka SQL zostanie dodana w przyszłym wydaniu. Narzędzia Visual Studio Build Tools obsługują teraz także instalowanie w kontenerze. Narzędzia Visual Studio Build Tools możesz pobrać ze strony z plikami do pobrania dla programu Visual Studio. Listę identyfikatorów składników i pakietów roboczych, za pomocą których można dostosować obraz kontenera, można znaleźć w katalogu składników narzędzi Visual Studio Build Tools 2017.

Uwaga

Narzędzia Build Tools wymagają licencji programu Visual Studio 2017.

Obsługa platformy UWP w narzędziach Visual Studio 2017 Build Tools

Narzędzia Visual Studio Build Tools umożliwiają tworzenie serwerów kompilacji bez instalowania całego programu Visual Studio. Na wniosek klientów uzupełniliśmy narzędzia Visual Studio Build Tools o obsługę dodatkowych typów projektów. Te typy projektów obejmują narzędzia dla platformy uniwersalnej systemu Windows, więc lista obsługiwanych projektów prezentuje się następująco: ASP.NET, Azure, aplikacje klasyczne w języku C++, ClickOnce, kontenery, .NET Core, .NET Desktop, Node.js, Office i SharePoint, Python, TypeScript, testy jednostkowe, UWP, WCF i Xamarin. Oczekujemy, że obsługa języka SQL zostanie dodana w przyszłym wydaniu.

Narzędzia dla deweloperów platforma uniwersalna systemu Windows

  • Narzędzia do zarządzania stanami wizualnymi i animacji są dostępne w programie Blend z najnowszymi aktualizacjami do projektanta XAML. Dostęp do tych narzędzi mają wszyscy deweloperzy platformy UWP. Dodatkowo funkcja edytowania i kontynuowania dla kodu XAML obsługuje edycję stanów wizualnych i animacji.
  • Obsługa automatycznego generowania kodu z użyciem uczenia maszynowego w systemie Windows umożliwia generowanie klas otoki WinML przez dodanie plików modelu ONNX jako istniejącego elementu w projekcie.
  • Zestaw Windows 10 SDK z aktualizacją z kwietnia 2018 r. (kompilacja 17134) jest teraz domyślnym wymaganym zestawem SDK dla programistycznego pakietu roboczego Platforma uniwersalna systemu Windows w programie Visual Studio.
  • Powiązane zestawy z wykonywaniem kodu możesz tworzyć w opcjonalnych pakietach przy użyciu języka C# i nowego szablonu projektu Opcjonalny pakiet kodu.
  • Dzięki nowemu szablonowi elementu „Układ pakietu” możesz łatwo tworzyć płaskie zbiory pakietów.

Obsługa Instalatora aplikacji w pakietach APPX

Platforma uniwersalna systemu Windows umożliwia dystrybucję aplikacji bez korzystania ze sklepu Microsoft Store. Służy do tego mechanizm nazywany „ładowaniem bezpośrednim”. Ta wersja umożliwia wygenerowanie pliku instalatora aplikacji w celu uzyskiwania automatycznych aktualizacji z wdrożeń opartych na plikach APPX. Dowiedz się więcej na temat technologii, na której to bazuje.

NuGet

TypeScript i JavaScript

Język TypeScript 2.8 RC jest teraz zawarty w programie Visual Studio 2017 w wersji 15.7.
Ta wersja oferuje następujące ulepszenia:

  • Obsługę pliku jsconfig.json, czyli pliku, który może pomóc w kontrolowaniu opcji edytora, podobne jak plik tsconfig.json.
  • Opcję zmniejszania użycia zasobów przez wyłączenie sprawdzania typów dla nieotwieranych plików.
    • Jest to jedyna diagnostyka raportów dla plików otwartych w edytorze opcji w obszarze Narzędzia > Opcje > TextEditor > JavaScript/TypeScript > Project.
  • Nowe funkcje edytowania dla użytkowników języków TypeScript i JavaScript:
    • Stosowanie wszystkich szybkich poprawek w pliku.
    • Organizowanie importów.
    • Uzupełnianie elementów this. w klasach i nawiasach klamrowych w rozszerzeniu JSX.
  • Funkcje języka TypeScript 2.8 :
    • Typy warunkowe (A extends B ? C : D).
    • Nowe warunkowe pomocniki typów lib.d.ts, takie jak NonNullable, ReturnType, Extract i Exclude.
    • Szczegółowa kontrola nad modyfikatorami w mapowanych typach.
    • Kontrola nad fabrykami JSX w plikach za pomocą nowej dyrektywy pragma // @jsx.

Więcej informacji na temat języka TypeScript 2.8 można znaleźć na blogu języka TypeScript 2.8 RC.

  • Funkcje języka TypeScript 2.7 :
    • Ścisłe inicjowanie właściwości.
    • Separatory liczbowe.
    • Inteligentniejsze pilnowanie typów.

Więcej informacji na temat języka TypeScript 2.7 można znaleźć na blogu języka TypeScript 2.7.

Naprawiliśmy też niektóre najważniejsze problemy zgłaszane przez klientów, w tym przedwczesne wyzwalanie fragmentów kodu, niemożliwe do anulowania refaktoryzacje, trudne do wyłączenia formatowanie i niepoprawny wybór wersji języka TypeScript.

Uwaga

Te ulepszenia są obsługiwane przez język TypeScript 2.8. Aby uzyskać najlepsze efekty, zaktualizuj istniejące projekty do najnowszej wersji języka TypeScript.

Debugowanie w języku JavaScript za pomocą przeglądarki Microsoft Edge

Deweloperzy korzystający z programów Visual Studio ASP.NET i .NET Core w kompilacjach dla niejawnych testerów systemu Windows mogą ustawiać punkty przerwania i debugować swoje pliki JavaScript za pomocą przeglądarki Microsoft Edge. Gdy elementem docelowym jest przeglądarka Microsoft Edge, program Visual Studio będzie korzystać z nowego protokołu Edge DevTools Protocol opracowanego przez zespół przeglądarki Microsoft Edge. Deweloperzy mogą debugować i rozwiązywać problemy z językiem JavaScript z poziomu programu Visual Studio w przeglądarkach Microsoft Edge i Google Chrome. Z radością udostępniamy tę funkcję, o którą często pytali klienci. Chętnie poznamy Twoją opinię na temat tej funkcji, co pomoże nam w ulepszeniu programu Visual Studio.

Debugowanie i diagnostyka

Ta wersja dodaje obsługę uwierzytelniania usług VSTS i GitHub dla linku źródłowego. Uwierzytelnianie będzie automatycznie dodawane do żądań dotyczących linku źródłowego, jeśli jest dostępne za pośrednictwem środowiska IDE. Jeśli użytkownik nie będzie jeszcze uwierzytelniony, zostanie wyświetlony interfejs użytkownika logowania w celu umożliwienia uwierzytelniania.

Przy debugowaniu projektów platformy .NET Core obsługiwana jest funkcja debugowania typu Krok do tyłu funkcji IntelliTrace.

  • Aby włączyć tę funkcję, przejdź dopozycji Narzędzia > Opcje ustawień> IntelliTrace i wybierz opcję Zdarzenia i migawki IntelliTrace.
  • Funkcja debugowania typu Krok do tyłu obsługuje tworzenie migawek przy wyjątkach. Aby włączyć tę funkcję, przejdź do pozycji Narzędzia > Opcje Ustawień >IntelliTrace i wybierz opcję Zdarzenia i migawki IntelliTrace(Rysunek 8).
Snapshot on exception
(Rysunek 8) Migawka przy wyjątku

Uruchamianie i dołączanie debugera skryptów do przeglądarki Microsoft Edge dla projektów platformy ASP.NET

Gdy przeglądarka Google Chrome jest używana jako wybrana przeglądarka, można debugować kod JavaScript i TypeScript bezpośrednio w programie Visual Studio. Wszystko, co trzeba zrobić, to wybrać przeglądarkę Chrome w programie Visual Studio i nacisnąć klawisz F5 w celu debugowania. Aby uzyskać dodatkowe informacje, zobacz Client-side debugging of ASP.NET projects in Google Chrome (Debugowanie projektów ASP.NET po stronie klienta w przeglądarce Google Chrome).

Team Explorer

W Ustawieniach usługi Git i Ustawieniach globalnych w programie Team Explorer istnieje możliwość wyboru między biblioteką OpenSSL i Secure Channel. Biblioteka OpenSSL jest ustawieniem domyślnym.

Narzędzia usługi Service Fabric dla wersji 6.2 usługi Service Fabric

Narzędzia Service Fabric Tools dla wersji 6.2 usługi Service Fabric zapewniają zgodność z wersją 6.2 środowiska uruchomieniowego oraz 3.1 zestawu SDK. Wraz z kilkoma poprawkami usterek wprowadzono nową funkcję umożliwiającą dodawanie obsługi kontenerów do istniejących projektów ASP.NET lub konsoli. Zarówno projekty .NET Framework, jak i .NET Core 2.0 są obsługiwane za pomocą nowego okna dialogowego i menu kontekstowego „Dodaj obsługę aranżacji”. Po dodaniu obsługi aranżacji usługi Service Fabric do tych projektów mogą one być wdrażane zdalnie i debugowane na lokalnym klastrze usługi Service Fabric.

Ulepszenia narzędzi Platformy Entity Framework

Ulepszenia narzędzi języka F# i F#

Wprowadziliśmy wiele ulepszeń języka F# i jego narzędzi. W tym wydaniu skupiono się na wydajności i uporządkowaniu istniejących funkcji dotyczących projektów w stylu zestawu .NET SDK. Jak zawsze ogromny wkład wniosła wspaniała społeczność języka F#.

Ulepszenia kompilatora języka F# i biblioteki podstawowej
  • Umożliwiono generowanie informacji AssemblyInfo języka F# na podstawie właściwości za pomocą kompilatora języka F# w zestawie .NET SDK.
  • Opcja --debug:full jest obsługiwana dla kompilatora języka F# programu .NET Core w systemie Windows.
  • Polecenie MakeTuple jest obsługiwane dla krotek struktur.
  • Rozwiązano problem z niepotrzebnym ostrzeżeniem przy używaniu metody rozszerzenia dla krotki.
  • Element MailboxProcessor.PostAndAsyncReply poprawnie obsługuje anulowanie po anulowaniu procesu nadrzędnego.
  • Równość typów float32 jest teraz poprawna, gdy używane jest porównanie NonStructuralComparison.
  • Ostrzeżenia są teraz przekazywane dalej przy wyszukiwaniu przeciążeń metod (autor: Matthias Dittrich).
  • Poprawiono ostrzeżenie przy dopasowywaniu wzorca dla wyliczenia, dodając przykład niedopasowanego wyliczenia (autor: John Wostenberg).
Ulepszenia narzędzi języka F#
  • Znacznie obniżono użycie pamięci w usłudze kompilatora języka F# (autorzy: Avi Avni i Microsoft).
  • Istotnie poprawiono wydajność analizatora nieużywanych otwartych elementów, gdy jest włączony.
  • Skrócono czas reakcji przy włączonych analizatorach i poprawkach kodu języka F# w taki sposób, że diagnostyka błędów ma zawsze wyższy priorytet od wszystkiego innego.
  • Dodaliśmy szablony platformy ASP.NET Core dla języka F#.
  • Wstępne porządkowanie wklejonych plików w folderach dla projektów zestawu .NET SDK: są one teraz prawidłowo umieszczane na samej górze zakresu, do którego zostały wklejone.
  • Skrypty języka F# bez pliku projektu poprawnie wysyłają kod do okna F# Interactive po naciśnięciu klawiszy Alt+Enter.
  • Widok debugera dla list języka F# został rozszerzony z 50 do 5000 elementów.
  • Klasyczne projekty języka F# (tylko platforma .NET Framework) przeprowadzają także kompilacje w czasie projektowania, co skraca czas ładowania rozwiązania.
  • Widoki wytycznych strukturalnych i tworzenia konspektu można teraz przełączać w obszarze Ustawienia > Edytor > tekstu F# > Zaawansowane.
  • Atrybuty na poziomie zestawu teraz są zwracane przez usługę kompilatora języka F#.
  • Dodaliśmy element Entity.DeclaringEntity do usługi kompilatora języka F#.
  • Optymalizacja jest dostępna za pośrednictwem interfejsu API usługi kompilatora języka F# (autorzy: Steffen Forkmann i ncave).
  • Element GetDeclarationLocation nie wymaga już pliku w celu udostępnienia wyników dla danych poprawnych pod każdym innym względem (autor: amieres).
  • Element IsNameGenerated jest teraz dostępny w interfejsie Symbols API języka F# (autor: Eugene Auduchinok).
Ulepszenia infrastruktury języka F#
  • Element autoconf nie jest już wymagany w naszej kompilacji Mono.
  • Wszystkie projekty integracji programu Visual Studio teraz korzystają z zestawu .NET SDK.
  • Skrót zatwierdzenia dla kompilacji narzędzi jest dostępny w pomocy > dotyczącej programu Microsoft Visual Studio.

Aby zobaczyć pełny dziennik zatwierdzania elementów uwzględnionych w tym wydaniu, zapoznaj się z naszym tagiem wydania dla wersji 15.7.


---

Release Notes Icon Powiadomienie o biuletynie zabezpieczeń programu Visual Studio 2017 w wersji 15.7

Powiadomienie o biuletynie zabezpieczeń programu Visual Studio 2017 w wersji 15.7.6 — wydano 2 sierpnia 2018 r.

CVE-2018-8356 Luka w zabezpieczeniach dotycząca obejścia funkcji zabezpieczeń platformy .NET Core

Firma Microsoft wie o luce w zabezpieczeniach dotyczącej obejścia funkcji zabezpieczeń, która występuje w sytuacji, gdy platforma .NET Core nie zweryfikuje poprawnie certyfikatów. Osoba atakująca, która pomyślnie wykorzystała tę lukę w zabezpieczeniach, może przedstawić wygasły certyfikat w przypadku zakwestionowania. Aktualizacja usuwa tę lukę w zabezpieczeniach, poprawiając obsługę weryfikacji certyfikatów przez platformę .NET Core.

Powiadomienie o biuletynie zabezpieczeń programu Visual Studio 2017 w wersji 15.7.5 — wydano 10 lipca 2018 r.

CVE-2018-8172 Luka w zabezpieczeniach dotycząca zdalnego wykonywania kodu w programie Visual Studio

Luka w zabezpieczeniach dotycząca zdalnego wykonywania kodu, która może prowadzić do wykorzystania maszyny użytkownika po otwarciu specjalnie przygotowanego projektu lub pliku zasobów. Aktualizacja zabezpieczeń usuwa tę lukę w zabezpieczeniach, poprawiając sposób sprawdzania źródłowej adiustacji pliku.

CVE-2018-8260 Luka w zabezpieczeniach dotycząca zdalnego wykonywania kodu w programie .NET Framework

Istnieje luka w zabezpieczeniach dotycząca zdalnego wykonywania kodu w oprogramowaniu platformy .NET, która może prowadzić do wykorzystania maszyny użytkownika przez umożliwienie osobom atakującym uruchamiania dowolnego kodu w kontekście bieżącego użytkownika. Aktualizacja zabezpieczeń usuwa tę lukę w zabezpieczeniach, poprawiając sposób sprawdzania źródłowej adiustacji pliku na platformie .NET.

CVE-2018-8232 Luka w zabezpieczeniach polegająca na nieuprawnionej modyfikacji w programie Microsoft Macro Assembler na platformie .NET

Luka w zabezpieczeniach polegająca na nieuprawnionej modyfikacji związana z nieprawidłową weryfikacją kodu przez program Microsoft Macro Assembler. Aktualizacja zabezpieczeń usuwa tę lukę w zabezpieczeniach przez sprawdzenie, czy program Microsoft Macro Assembler prawidłowo weryfikuje logikę kodu.

CVE-2018-8171 Luka w zabezpieczeniach dotycząca obejścia funkcji zabezpieczeń programu ASP.NET Core

Luka w zabezpieczeniach dotycząca obejścia funkcji zabezpieczeń programu ASP.NET Core istnieje, gdy liczba niepoprawnych prób zalogowania nie zostanie zweryfikowana, co może prowadzić do podejmowania przez osobę atakującą nieskończonych prób uwierzytelnienia. Aktualizacja usuwa tę lukę w zabezpieczeniach, weryfikując liczbę niepoprawnych prób logowania.

Powiadomienie o biuletynie zabezpieczeń programu Visual Studio 2017 w wersji 15.7.4 — wydano 18 czerwca 2018 r.

CVE-2018-11235 Biuletyn zabezpieczeń firmy Microsoft dotyczący luk w zabezpieczeniach usługi Git

Usunęliśmy luki w zabezpieczeniach usługi Git, które zostały ujawnione przez społeczność Git. Luka w zabezpieczeniach może prowadzić do wykonania dowolnego kodu, gdy użytkownik sklonuje złośliwe repozytorium.

Powiadomienie o biuletynie zabezpieczeń programu Visual Studio 2017 w wersji 15.7.1 — wydano 8 maja 2018 r.

CVE-2018-0765 Biuletyn zabezpieczeń firmy Microsoft dotyczący luki w zabezpieczeniach umożliwiającej przeprowadzenie ataku typu „odmowa usługi” względem platformy .NET Core

Firma Microsoft publikuje ten biuletyn zabezpieczeń, aby zapewnić informacje na temat luki w zabezpieczeniach platformy .NET Core i .NET Native w wersji 2.0. W tym biuletynie podano też wskazówki dla deweloperów dotyczące aktualizowania aplikacji w celu usunięcia tej luki w zabezpieczeniach. Firma Microsoft dowiedziała się o luce w zabezpieczeniach umożliwiającej przeprowadzenie ataku typu „odmowa usługi”, jeśli program .NET Framework lub .NET Core nieprawidłowo przetworzy dokumenty XML. Tę lukę w zabezpieczeniach może wykorzystać atakujący i spowodować odmowę usługi dla aplikacji .NET Framework, .NET Core lub .NET Native. Aktualizacja usuwa tę lukę w zabezpieczeniach, poprawiając obsługę przetwarzania dokumentów XML przez aplikacje .NET Framework, .NET Core i .NET Native. W przypadku aplikacji ASP.NET Core deweloperom zaleca się również zaktualizowanie do platformy ASP.NET Core 2.0.8.


Release Notes IconVisual Studio 2017, wersja 15.7.1

wydana 8 maja 2018 r.

Najważniejsze problemy rozwiązane w wersji 15.7.1

Są to problemy zgłaszane przez klientów, rozwiązane w wersji 15.7.1:

  • W tej wersji dodano poprawkę, która ogranicza użycie pamięci i wykorzystanie odzyskiwania pamięci podczas ładowania rozwiązania.

Release Notes IconVisual Studio 2017, wersja 15.7.2

wydana 21 maja 2018 r.

Najważniejsze problemy rozwiązane w wersji 15.7.2

Są to problemy zgłaszane przez klientów, rozwiązane w wersji 15.7.2:


Release Notes IconVisual Studio 2017, wersja 15.7.3

wydana 31 maja 2018 r.

Najważniejsze problemy rozwiązane w wersji 15.7.3

Są to problemy zgłaszane przez klientów, rozwiązane w wersji 15.7.3:


Release Notes IconVisual Studio 2017 w wersji 15.7.4

wydany 18 czerwca 2018 r.

Najważniejsze problemy rozwiązane w wersji 15.7.4

Są to problemy zgłaszane przez klientów, rozwiązane w wersji 15.7.4:


Release Notes IconVisual Studio 2017, wersja 15.7.5

Wydane 10 lipca 2018 r.

Najważniejsze problemy rozwiązane w wersji 15.7.5

Są to problemy zgłaszane przez klientów rozwiązane w wersji 15.7.5:


Release Notes IconVisual Studio 2017, wersja 15.7.6

wydana 2 sierpnia 2018 r.

Podsumowanie aktualizacji w wersji 15.7.6

Ta wersja zawiera następujące ulepszenia i udoskonalenia:

  • W ramach tej wersji jest teraz instalowany zestaw Java™ Development Kit 8, aktualizacja 181 (JDK w wersji 8u181).

Najważniejsze problemy rozwiązane w wersji 15.7.6

Są to problemy zgłaszane przez klientów rozwiązane w wersji 15.7.6:


Znane problemy

Bardzo uważnie wysłuchujemy opinii użytkowników. Odwiedź witrynę Społeczność deweloperów, aby wyszukać najnowsze problemy, zarejestrować nowe problemy i ocenić te, które już istnieją. Zobacz wszystkie znane problemy w programie Visual Studio 2017 w wersji 15.7 i dostępne dla nich obejścia.

Visual Studio 2017 Known Issues


Opinie i sugestie

Chcemy poznać Twoje zdanie! Problemy możesz zgłaszać za pomocą opcji Zgłoś problem w prawym górnym rogu instalatora lub bezpośrednio w środowisku IDE programu Visual Studio. Ikona Report a Problem Icon znajduje się w prawym górnym rogu. Zgłaszanie sugestii dotyczących produktów i śledzenie problemów jest możliwe w społeczności deweloperów programu Visual Studio, gdzie można też zadawać pytania, znajdować odpowiedzi i proponować nowe funkcje. 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.

Developer Tools Blogs


Historia informacji o wersji programu Visual Studio 2017

Więcej informacji na temat poprzednich wersji programu Visual Studio 2017 można znaleźć na stronie Historia informacji o wersji programu Visual Studio 2017.


Początek strony