Visual Studio アイコン Visual Studio 2017 バージョン 15.6 リリース ノート


開発者コミュニティ | システム要件 | 互換性 | 再頒布可能コード | ライセンス条項 | ブログ | 既知の問題



Note

これは Visual Studio の最新バージョンではありません。 最新のリリースをダウンロードするには、Visual Studio のサイトにアクセスしてください。


サポート期間

このバージョンはサポート対象外になりました。 Visual Studio のサポートの詳細については、Visual Studio 2017 のサポート ポリシーに関するページを参照してください。

最新バージョンのリリース ノートを参照するか、Visual Studio サイトにアクセスして、サポートされている最新バージョンの Visual Studio 2017 をダウンロードしてください。

Visual Studio 2017 バージョン 15.6 リリース


15.6 の主な新機能の概要

15.6 で修正された主な問題

以下は、15.6 で対処された、ユーザーから報告された問題です。

ユーザーから報告されたすべての問題が、Visual Studio 2017 バージョン 15.6 で修正されたことをご確認ください。

Developer Community ポータル


15.6 の新機能の詳細

Release Notes Icon Visual Studio 2017 バージョン 15.6.0

2018 年 3 月 5 日にリリース

15.6 の新機能

パフォーマンス

15.6 では、引き続きソリューション読み込みのパフォーマンスを向上することに取り組みました (特にデザイン時のビルドの結果がキャッシュされるシナリオの場合)。 大規模な C# ソリューションおよび Visual Basic ソリューションは、コンピューター上で既に開かれている場合、従来の 2 倍の速さで読み込まれます。

.NET Core ソリューションの読み込み

.NET Core に重点を置きました。ラボの測定値によると、お客様はソリューションの読み込み時間について平均 20% の短縮を期待できます。

UI 応答性の通知

拡張機能がパフォーマンスおよび信頼性に及ぼす影響について透過性を高めるために、Visual Studio ではリアルタイム分析を実行して、拡張機能が無応答を引き起こしている可能性が高いかどうかを判断します。 拡張機能がハングを引き起こしていると判定された場合、Visual Studio は通知を表示します。これを受けてユーザーは疑いのある拡張機能を無効にしたり、その拡張機能に関して今後の通知を抑制したりすることができます (図 1)

無効にするオプションがある UI 応答性の通知
(図 1) 拡張機能を無効にするため、または今後の通知を抑制するための UI 応答性の通知オプション

インストールとセットアップ

  • このリリースでは、管理権限がなくても Visual Studio レイアウトを作成できます。これにより、管理者以外のユーザーもオフラインのネットワーク インストールを作成できるようになります。
  • Visual Studio を初めてインストールする場合、または Visual Studio を Web から更新する場合、Visual Studio インストーラーでは透過性の高い新しいセットアップ エクスペリエンスが表示されます。 内部的な処理は何も変更されていませんが、新しいエクスペリエンスにより、実行されている内容が順次表示されます (図 2)
Visual Studio インストーラーのセットアップの透過性が向上
(図 2) Visual Studio インストーラーのセットアップの透過性が向上
インストールを一時停止する機能 (図 3)、時間をおいてインストールを再開する機能 (図 4) をサポートするようになりました。
インストールの一時停止
(図 3) インストールの一時停止
インストールの再開
(図 4) インストールの再開
インストールの詳細

新しいインストールの詳細 (図 5) では、ダウンロードのサイズ、ダウンロードの完了率、ダウンロードの速度を確認できます。 また、インストールするパッケージの総数およびまだインストールが終了していないパッケージも確認できます。

Note

インストールを一時停止し、時間をおいて再開した場合、まだダウンロードおよびインストールされずに残っているパッケージに進捗状況が適用され、前のカウントからの開始とはなりません。

インストールの詳細
(図 5) インストールの詳細
IDE のセットアップ
  • 拡張機能および更新プログラムからではなく、Visual Studio の更新通知からインストーラーに直接移動するようにしたことにより、更新プロセスを効率化しました。

  • "ASP.NET と Web 開発"、".NET Core クロスプラットフォームの開発" の各ワークロードは、"Web 開発用クラウド ツール" を含むように更新されました。 このコンポーネントには、Visual Studio 内から Azure Functions を使用するのに必要なすべての要素が含まれています。

    Note

    15.6 Preview 3 から Preview 4 以降に更新すると、ユーザーへの通知または確認を行うことなくコンピューターが自動的に再起動する場合があります。

エディターの機能強化
  • Edit.Duplicate のショートカットとして Ctrl + D キーを既定のキーボード マップに追加しました。 以前のコード (Ctrl + EV) は引き続き動作し、すべてのキーボード マップ スキームで使用できます。
  • [選択対象の展開] コマンドを追加しました。これにより、ユーザーは選択範囲を次の論理ブロックに連続して展開することができます。 現在の選択対象を展開するにはショートカット Shift + Alt + = キーを使用し、縮小するには Shift + Alt + - キーを使用します。

F# 言語およびツールの機能強化

このリリースでは、F# とそのツールに多くの改良が加えられました。 これらの改良のうち、最も重要なのは .NET Core SDK のプロジェクトに関連する内容です。 いつものように、コミュニティからの重要な投稿も集まっています。

F# コンパイラとコア ライブラリの機能強化
  • バグの修正とパフォーマンスの向上: ncaveVasily Kirichenko、Microsoft。
  • F# コレクションで IReadonlyList および IReadonlyDictionary を実装するようになりました: Saul Rennison
  • NativePtr.ByRef のサポートの追加: mjmckp
  • Async.StartImmediateAsTask のサポートの追加: Onur Gumus
  • Patrick McDonald によって追加された Seq.transposeArray.transposeList.transpose のサポート。
  • .Item1/.Item2/etc. のサポートを終了した F# コードで定義されている System.Tuple 型の回帰が修正されました。 これらのタプル型は F# のタプル構文と 100% 同義になったため、これらのプロパティを使用する場合に出す警告を導入しました。 詳細については、リンクされた pull request を参照してください。
  • 静的に解決される型パラメーターの推論順序での回帰と別のバグに関する修正プログラムが修正されました: Gustavo leon および Microsoft。
  • .NET Standard 用の FSharp.Core で、F# 型の IsSerializable プロパティが有効になりました。 OptionAsync などの F# 型が .NET Standard および .NET Core に対してシリアル化可能になりました。
  • FSharp.Core パッケージはバージョン 4.3.4 に更新され、このリリースにおける FSharp.Core でのすべての変更を取り込みました。
F# ツールの機能強化
  • .NET Core SDK ベースのプロジェクトに対するファイルの順序が実装されました。これには、上/下の追加、フォルダー サポート、プロジェクトの再度読み込みを必要としない Visual Studio UI の更新が含まれます。
  • .NET Core SDK ベースのプロジェクトのマルチ ターゲットのサポートが実装されました。
  • .NET Core SDK ベースのプロジェクトで共有ファイルがサポートされるようになりました。
  • .NET Standard プロジェクトは、F#/.NET Framework プロジェクトによって参照できます。
  • エラー レポート機能の強化: Vasily Kirichenko および Eugene Auduchinok
  • パフォーマンスの向上: Vasily KirichenkoEugene AuduchinokDaniel Wedelich、Microsoft。
  • 多数のバグ修正によるオートコンプリートの精度向上: Vasily Kirichenko および Microsoft。
  • 開かれていない名前空間の静的メンバーが入力候補で使用可能: Vasily Kirichenko
  • 名前空間のシンボルが [Document Highlight]\(ドキュメントの強調表示\) および [すべての参照の検索] に表示されます: Vasily Kirichenko
  • Structured Guidelines が他のエディター (VSCode、VS for Mac、Rider) でも利用できるようになりました: Eugene Auduchinok
  • F# コンストラクターでの折りたたみと構造化ガイドラインの改良: Eugene Auduchinok
  • 開いているステートメントが名前の簡略化アナライザーで簡略化されなくなりました: Vasily Kirichenko
  • QuickInfo で sbyte および byte IL フィールドが表示されるようになりました: Vasily Kirichenko
  • 呼び出されていない F# 関数またはメソッドで未使用の宣言コード修正プログラムがトリガーされなくなりました: Vasily Kirichenko
  • .NET Framework プロジェクトのフォルダー間でドラッグ アンド ドロップ操作ができるようになりました: Paulo Nobre
  • 未使用の宣言アナライザーとコード修正プログラムを切り替えることができるようになりました。
  • バグの修正とパフォーマンスの向上: Eugene Auduchinok および Microsoft。
  • Eugene Auduchinok による #if INTERACTIVE 定義で囲まれたコードで、入力確認を必要としない IDE 機能がサポートされるようになりました。
  • 古い F#/ASP.NET (.NET Framework) プロジェクトでの空の [新しいファイル] ウィンドウを対象にした適切でない修正プログラムが修正されました: Loïc Denuzière
F# インフラストラクチャとオープン ソースの機能強化
  • 更新プログラム RFC のバージョン管理が実装されました。
  • コンパイラおよびツールで使用されるローカライズ ファイルはすべて GitHub にあります。コミュニティからの投稿を受け入れることができます。
  • 夜間ビルドは 1 時間後に生成することができます (4 時間以上からの短縮)。
  • オープン ソース共同作成者のための Windows 10 SDK に対する依存関係を削除しました。
  • サテライト アセンブリと FSharp.Core.resources.dll が F# コンパイラ SDK に含められました。
  • アセンブリ情報が変更されていない場合に、Visual F# コードベースでコンパイラ自体のリビルドは行われなくなりました。
  • エディター ツールをデバッグする際にすべてのシンボル使用結果を容易に確認できるように、FSharpSymbolUse に対して ToString() が実装されました: Eugene Auduchinok

15.6 リリースの完全なコミット変更履歴を確認するには、タグに関するページを参照してください。

Note

Visual Studio 2017 バージョン 15.6 のすべての既知の問題と回避策を参照できます。

Visual C++ の機能強化

  • このリリースには、CVE-2018-1037 に記載されている PDB セキュリティ問題の修正が含まれています。
  • [新しいプロジェクトの追加] ダイアログから CMake プロジェクトを作成します。
  • Visual Studio で新しい CMake プロジェクトを開くときに、CMake キャッシュを自動的に生成するかどうかを選択できるようになりました。
  • CMake プロジェクトでの CTest、Google Test、Boost.Test の各テストはテスト エクスプローラーで自動的に検出され、一覧表示されます。
  • Boost.Test 項目テンプレートを使用して Boost 単体テストをプロジェクトに容易に追加できます。 Boost 単体テストにおいて Boost 動的ライブラリが使用されるようになりました。
  • C++ 17 のコピー省略の保証をサポート。
  • Android 開発用の Android NDK r15c の組み込みサポート
  • Visual Studio Android ツールにおける、SDK レベル 25 以前でビルドされた Android アプリの Oreo デバイスでの展開と実行のサポート。
  • C++ 17 標準ライブラリの実装に向けてさらなる進展がありました。これには、stable_sort、partition、並行して実行される inline vector::emplace_back、<memory_resource> などの API (C++17 標準に準拠) が含まれます。
  • C++ Open Folder で不足しているインクルード ファイルは、それらのファイルがワークスペース ルートの下に存在していれば、インクルード パスに明示的に追加されていなくても、自動的に検出されます。
  • Embedded ARM GCC サポートでデバッグ オプションを使用することができます。 バイナリを右クリックし、[デバッグ設定と起動設定] を選択し、C/C++ デバッグ マイクロコントローラーを選択します。
  • ガイド付き最適化のプロファイルが有効になり、ARM64 で完全にサポートされます。
  • C++ Core Guidelines Check 拡張機能への、よりきれいで、安全で、保守しやすいコードを作成するのに役立つさらなる規則の追加。
    • 有効期限を経過した間接参照の使用を検出する C++ Core Checker 拡張機能。
    • 整数オーバーフローに関するルールと、C++ Core Guidelines からの追加のルールを適用する 5 つの新しいチェック項目。
    • C++ Core Check に、算術オーバーフローを検出するためのコード分析規則のセットが含まれるようになりました。
  • 単一ファイルのコード分析の実行 (または、ソリューション エクスプローラーでのファイルの選択) をサポート。[ビルド] メニューと [分析] メニューのクリーンアップ。 "コード分析の実行" はコードの生成を行わなくなりました。これにより分析の実行速度が速くなります。
  • エディターでは非アクティブな構成に対する IntelliSense エラーが紫色の波線として表示されます。 処理すべき構成項目の数は、[ツール] > [オプション] の順に進んで構成することができます。
  • 大幅なコンパイル時の機能強化:
    • コンパイラでは、事前にインクリメントされたループの強化された最適化機能と LTCG での一定のグローバル データの強化された識別および伝達機能によって、コードを最適化して実行速度を高めます。
    • 15.5 と比較してコンパイル時間が短くなっています。 コンパイラのフロントエンドは、ほとんどの入力で 3 ~ 5% 速くなっています。 コアの最適化アルゴリズムのオーバーヘッドが削減されたことにより、コンパイラ オプティマイザーは 3% 速くなっています。 さらに、データ構造の再構築により、大規模な LTCG コンパイル処理が 10% 速くなりました。
  • マップファイル生成のオーバーヘッドがフル リンク シナリオで軽減されています。 引き続き、マップファイルではなく PDB ファイルの使用をお勧めします。
  • MSVC コンパイラは、x86、x64、ARM、ARM64 など、すべてのアーキテクチャで /Qspectre スイッチをサポートしています。

C# コンパイラ

C# コンパイラで次の機能をサポートするようになりました。

  • ビルドのスループットのパフォーマンス向上のための CoreCLR に対するコンパイラ サーバー。
  • CoreCLR で署名する厳密な名前 (/keyfile オプション、すべての OS)。

多数のバグ修正と 1 つの互換性に影響する変更 (互換性に影響する変更の実施一覧に関するページを参照) に加えて、7.2 言語機能に対して 2 つの言語に関するマイナーな変更が行われました。

Visual Studio Tools for Xamarin

このリリースには、Xamarin.iOS 11.8 と Xamarin.Android 8.2 が含まれています。

IOS シミュレーターでのライブ XAML プレビュー

Xamarin Live Player では、開発者は Visual Studio と iOS または Android デバイスを使用するだけでアプリの展開、テスト、デバッグを継続的に行うことができます。 Visual Studio 2017 バージョン 15.5 では、開発者が再コンパイルや再展開を必要とせずに、Android エミュレーター内でリアルタイムの XAML の変更を直接プレビューできるようにサポートを追加しました。 このリリースでは、Windows 用のリモートの iOS シミュレーターに、この機能が追加されました。

Python

このリリースでは、補完データベースがなくてもインストールされたパッケージに対する IntelliSense を取得できるようになりました (図 6)。 すなわち、パッケージをインストールしてから最大で 4 時間待たなくても、numpypandas などの一般的なパッケージ用の入力候補をわずか数秒で取得できるようになります。

pandas パッケージ用の Python 入力候補
(図 6) pandas パッケージ用の Python 入力候補

ドキュメント文字列 (それらがクラスまたは関数で使用される場合) で使用される色、また re ライブラリの呼び出しの一部として検出された正規表現パターンで使用される色をカスタマイズする機能を追加しました (図 7)。 これらを変更するには、[ツール] > [フォント] > [色] の順に移動し、"Python ドキュメント" および "Python 正規表現" を使用します。

強調表示されたドキュメント文字列と正規表現の例
(図 7) 強調表示されたドキュメント文字列と正規表現の例

最後に、Anaconda ユーザーについては、conda の検出と統合を試しています。 有効にすると、使用している conda 環境が Visual Studio 内に自動的に表示されます。パッケージの管理には pip ではなく conda が使用されます。 詳細については、「what's new for Python in Visual Studio 15.6」 (Visual Studio 15.6 での Python 用の新機能) ブログ投稿を参照してください。

デバッグと診断

CPU 使用率ツール

CPU 使用率ツールでは、非同期コードの論理呼び出し履歴 ("非同期呼び出し履歴の作成" とも呼ばれる) を表示できます (図 8)

  • 論理呼び出し履歴 (すなわち、"作成された呼び出し履歴") を表示するには、CPU 使用率ツールの [フィルター] ドロップダウン メニューで [非同期コードの作成] 設定を有効にします。

  • 親関数またはタスクの代わりに実行される非同期コードは、[コール ツリー] ビューおよび [呼び出し元/呼び出し先] ビューに子として表示されます。

  • この変更により、非同期コードへの移動が簡単になり、そのパフォーマンス特性を理解しやすくなります。

    Note

    非同期コード パターンによっては、この機能で論理呼び出し履歴を生成するのに時間がかかることがあります。 必要に応じて、分析を取り消して設定を無効にすることができます。 この操作は、ALT-F2 パフォーマンス プロファイラーの起動ページを使用した、事後分析のスタイル プロファイリング中にのみ有効です。 デバッグ中に CPU 使用率ツールを使用した場合、論理呼び出し履歴は表示されません。

[呼び出し履歴の作成] が有効になっている論理呼び出し履歴ツリー
(図 8) [呼び出し履歴の作成] が有効になっている論理呼び出し履歴ツリー

CPU 使用率ツール (診断ツールのウィンドウおよび ALT-F2 パフォーマンス プロファイラーでの F5 デバッグ中に使用可能) では、特定のコード行の CPU 消費量に基づいてソース行が強調表示されるようになりました (図 9)

  • CPU 使用率ツールの [コール ツリー] ビューまたは [呼び出し元/呼び出し先] ビューを表示すると、選択した関数のソースが表示され、関数の各ソース行には CPU の消費量が表示されます。

  • 関数の CPU パフォーマンスに問題がある場合は、関数が実行されていたときに、具体的に関数のどのソース行が問題の CPU 消費量の原因になっていたかを特定できます。

    Note

    この機能では、生成された PDB にソース情報を含める必要があります。PDB はプロジェクトの設定で制御されます。 PDB にソース情報が含まれていないプロジェクトでは、行の属性およびソース ファイルのいずれも表示されません。

ソース行が強調表示された CPU 使用率ツール
(図 9) ソース行が強調表示された CPU 使用率ツール
スレッド名のサポート

ユーザー フィードバックに従い、デバッガーは、ダンプのデバッグ時に SetThreadDescription API を介して設定されたスレッド名を表示できるようになりました。 この機能では、Windows 10 Fall Creators Update 以降のビルドにダンプを収集する必要があります。

スナップショット デバッガー

Azure App Service で実行されている ASP.NET アプリケーションで作業しているときに、スナップショットまたはログポイントを試してみたい場合は、[デバッグ ターゲット] ドロップダウンリストで [スナップショット デバッガー(AzureAppService)] を選択します (図 10)

ASP.NET アプリケーション用のスナップショット デバッガーを起動
(図 10) ASP.NET アプリケーション用のスナップショット デバッガーを起動

.NET の生産性

15.6 Preview 2 で、逆コンパイルされたソースに移動する機能を追加しました。 有効になっている場合、参照先の任意の型またはメンバーに対して [定義へ移動] または [定義をここに表示] を呼び出すと、その定義と、ILSpy 逆コンパイルを介して再構築されたメソッド本体が表示されます。 この機能を有効にするには、[ツール] > [オプション] > [テキスト エディター] > [C#] > [詳細] > [逆コンパイルされたソースへのナビゲーションを有効にする] に移動します (図 11)。

逆コンパイルされたソースへの移動
(図 11) 逆コンパイルされたソースに移動する

その他にも .NET EditorConfig オプションをいくつか追加しました。

  • dotnet_prefer_inferred_tuple_names
  • dotnet_prefer_inferred_anonymous_type_member_names

Note

.NET コーディング規則オプションをすべて表示するには、「EditorConfig の .NET コーディング規則の設定」を参照してください。

Visual Studio Web ツール

  • ソリューション エクスプローラーには、"ファイルの入れ子" と呼ばれる .NET Core プロジェクト用の新機能が追加されました。この機能によりユーザーは関連するファイルをソリューション エクスプローラーに表示する方法を制御することができます。
  • プロジェクトの発行エクスペリエンスが更新されました。
  • [新しいプロジェクト] ダイアログ:
    • .NET Framework のバージョンを選択するためのドロップダウンは、ダイアログの下部に移動され、テンプレートのフィルターとしての機能はなくなりました。
    • ノード "Web" のサブ ノード "Web Site" の名前が "Previous Versions" に変更されました。
  • WebForms および MVC 5 プロジェクトのデバッグ ドロップダウン:
    • ユーザーは Azure App Service でデプロイされたアプリに対してスナップショット デバッガーを選択することができます。
    • ASP.NET Core プロジェクトと同じブラウザー選択ジェスチャを持つように更新されました。

継続的デリバリー ツール

ソース管理下にあるソリューションについては、チーム エクスプローラーの [継続的デリバリー] タイルをクリックして、アプリケーションのビルドと展開の自動化を構成することができます。

継続的デリバリー ツールを構成する
  • ソース管理プロバイダーとして TFVC のサポートを追加しました。 VSTS TFVC チーム プロジェクトのソース管理下にあるソリューションについては、継続的デリバリーを構成することができます(図 12)
VSTS TFVC プロジェクトでプロジェクトの継続的デリバリーを構成する
(図 12) VSTS TFVC プロジェクトでプロジェクトの継続的デリバリーを構成する
  • SSH による Git 認証のサポートを追加しました。 SSH AUTH が有効になっている VSTS または GitHub Git リポジトリでソース管理下にあるソリューションについては、継続的デリバリーを構成することができます。

  • コンテナー化されたプロジェクトのサポートを導入しました。 Linux 用の Azure App Service を対象とする Docker サポートおよび ASP.NET Core プロジェクトではソリューションの継続的デリバリーを構成することができます (Web App for Containers) (図 13)。 [継続的デリバリーを構成する] ダイアログの既定値では、Linux 用の Azure App Service (Web App for Containers) が新たに作成され、Azure サブスクリプションにそれがまだ存在しない場合は Azure Container Registry が作成されます。

App Service on Linux に対する [Azure への継続的デリバリーを構成] ダイアログ
(図 13) Linux 用の App Service に対して [Azure への継続的デリバリーを構成] ダイアログを構成する

チーム エクスプローラー

Git タグのサポート

Git タグのサポートを強化しました。 タグの作成、削除、およびプッシュができるようになりました。 [タグ] ページでは、リポジトリ内のすべてのタグを表示することができ、タグから新しいブランチを作成できます。 これは、UserVoice からの要求が最も多かった機能の 1 つでした。

Visual Studio Team Services ユーザーに対しては、pull request ブランチをチェックアウトできます。 この機能により、pull requests のレビュー、変更のテスト、およびコードのビルドが容易になります。

ユニバーサル Windows プラットフォーム開発者向けツール

Windows 10 Insider Preview SDK (ビルド 17095) は、オプションのコンポーネントとして、ユニバーサル Windows プラットフォーム開発ワークロードと共にインストールできます。

拡張性

複数の Visual Studio 実行可能ファイル (devenv.exe、blend.exe、wdexpress.exe、vsga.exe) のファイル バージョンはマイナー リリースを反映します (たとえば 15.6.*)。

Note

これはいずれの機能にも影響しませんが、実行可能ファイルのバージョン番号に依存する外部コードについては、更新を必要とする場合があります。

テスト エクスプローラー

新しい階層ビュー

Visual Studio のテスト エクスプローラーには、プロジェクト、名前空間、およびクラスごとにテストを整理する階層ビュー (図 14) が追加されました。 このビューのオン/オフを切り替えるには、[グループ化] ボタンの横の [テスト エクスプローラー] ウィンドウの上部にある階層ボタンを使用します。

テスト エクスプローラーの階層ビュー
(図 14) テスト エクスプローラーの階層ビュー

この機能を使用すると、テスト間の移動がはるかに簡単になるだけでなく、テストに関する適切なフィードバックをひとめで確認することもできます。

  • 階層内の "親ノード" (プロジェクト、名前空間、クラス) には、失敗したテストが 1 つ以上含まれている場合、失敗したテストのアイコンが表示されます。
  • また、親ノードの後には、グループ化に含まれるテスト数を集計した値が続きます。 親ノードの右側に表示される期間 (ミリ秒) は、そのグループ内のテストの実行にかかった時間の合計です。
リアルタイム テスト検出

テストはリアルタイムのテスト検出によって自動的に検出され (図 15)、管理プロジェクトをビルドする必要はありません。 これにより、テスト エクスプローラーは、テストの追加、削除、または編集などのコード変更を常に反映することができます。 すべての種類のプロジェクトで使用できる前述の階層ビュー機能とは異なり、自動テスト検出機能は C# プロジェクトおよび Visual Basic プロジェクトでのみ使用できます。

Xamarin Live Player
(図 15) Xamarin Live Player のペアリング、展開、ライブ エディット モードのアニメーション
Win10 IoT Core テストのサポート

Win10 IoT Core アプリケーションのテストに対するサポートを導入しました。 このような UWP アプリケーションのテストをデバイスに展開し、デバイス上でデバッグおよび実行できるようになりました。 テストはまた、テスト エクスプローラーに完全に統合されます。 配置および実行のサポートは、VSTS CI を介しても利用できます。 したがって、Visual Studio での編集、コンパイル、デバッグ、テスト サイクル、さらに Visual Studio Team Services での継続的インテグレーション ワークフローにおいて、Win10 IoT Core アプリケーションは完全にサポートされています。

Win10 IoT Core テスト
(図 16) Win10 IoT Core テスト

Visual Studio Build Tools

Visual Studio Build Tools を使用すると、Visual Studio のすべてをインストールしなくても、ビルド サーバーを作成できます。 インストーラーでは、デスクトップ プロジェクトに対して C++、ASP.NET、および .NET Core をすでにサポートしています。 お客様のご要望に応えて、その他の種類のプロジェクトもサポートするよう Visual Studio Build Tools の機能を強化しています。 このリリースでは、TypeScript プロジェクトおよび Node.js プロジェクトに対するサポートを追加しました。 将来のリリースでは、より多くのプロジェクトの種類に対するサポートを追加する予定です。 これは、このリリースの Visual Studio Build Tools のダウンロード場所となります。

Visual Studio ClickOnce ツール

ClickOnce は、ユーザーとの最小限の対話によってインストールして実行できる、自己更新型の Windows ベースのアプリケーションの作成を可能にする配置テクノロジです。 ClickOnce では、アプリケーションの発行元の信頼性を検証し、アプリケーションおよび配置マニフェストに署名してファイルが改ざんされていないことを証明するときに証明書を使用します。 このリリースでは、Cryptography Next Generation (CNG) 証明書を使用してアプリケーションおよび配置マニフェストに署名する機能に対するサポートが追加されました。

Key Vault

Visual Studio 15.6 用にAzure Services Authentication Extension インボックスを追加しました。 これにより、Microsoft.Azure.Services.AppAuthentication ライブラリを使用するプロジェクトは、Visual Studio アカウントで、Key Vault などの Azure リソースにアクセスすることができます。

macOS の自動プロビジョニング

Windows 用の Visual Studio での iOS アプリのビルドがさらに簡単になります。 このリリースでは、自動 macOS プロビジョニングと呼ばれる最新機能を追加します。 Mac ビルド コンピューターを手動で管理する必要はありません。Mac に接続するだけで、後は Microsoft がビルド コンピューターの面倒なインストールおよび構成の作業を適切な Xamarin.iOS および Mono bits ビットですべて Visual Studio から処理します。

iOS Wi-Fi の展開

iOS リモート シミュレーターを使用することで、開発者は Windows 用の Visual Studio で iOS アプリ全体をテストおよびデバッグすることができます。このシミュレーターは無料の Community Edition を含むすべてのエディションの Visual Studio (現在のバージョンは 15.5) で使用できます。 このシミュレーターでは、位置情報シミュレーション、回転、ジェスチャなどの機能に加えて、Mac 上の iOS シミュレーターでサポートしていないマルチタッチなどの機能もサポートしています。 Windows 上で iOS アプリをビルドする開発者に優れたシミュレーター エクスペリエンスが提供されます。ただ、デバイスについてはどうでしょうか。 Visual Studio 2017 バージョン 15.6 では、Wi-Fi 展開によって iOS アプリをネットワーク経由で展開できます。この場合、ケーブルは不要です。 Xcode でワイヤレス デバイスをセットアップすると、そのデバイスは通常の展開対象と同じように Visual Studio に表示されます。


Release Notes Icon Visual Studio 2017 バージョン 15.6.1 サービス更新プログラム

2018 年 3 月 8 日にリリース

15.6.1 で修正された主な問題

以下は、ユーザーから報告され、このリリースで対処された問題です。


Release Notes Icon Visual Studio 2017 バージョン 15.6.2 サービス更新プログラム

2018 年 3 月 13 日にリリース

15.6.2 での更新の概要

CVE-2018-0875: .NET Core のマイクロソフト セキュリティ アドバイザリ

Microsoft は、.NET Core のパブリック バージョンに存在するセキュリティ上の脆弱性を認識しています。このバージョンでは、悪意のあるファイルや Web 要求によってサービス拒否 (DoS) 攻撃が引き起こされる可能性があります。

重要

システム管理者は、.NET Core ランタイムをバージョン 1.0.10、1.1.7、2.0.6 に更新することをお勧めします。 開発者は、.NET Core SDK をバージョン 1.1.8 または 2.1.101 に更新することをお勧めします。

15.6.2 で修正された主な問題

以下は、ユーザーから報告され、このリリースで対処された問題です。


Release Notes Icon Visual Studio 2017 バージョン 15.6.3 サービス更新プログラム

2018 年 3 月 19 日にリリース

15.6.3 での更新の概要

CVE-2018-0875: .NET Core のマイクロソフト セキュリティ アドバイザリ

Microsoft は、.NET Core のパブリック バージョンに存在するセキュリティ上の脆弱性を認識しています。このバージョンでは、悪意のあるファイルや Web 要求によってサービス拒否 (DoS) 攻撃が引き起こされる可能性があります。

重要

システム管理者は、.NET Core ランタイムをバージョン 1.0.10、1.1.7、2.0.6 に更新することをお勧めします。 開発者は、.NET Core SDK をバージョン 1.1.8 または 2.1.101 に更新することをお勧めします。

15.6.3 で修正された主な問題

以下は、ユーザーから報告され、このリリースで対処された問題です。


Release Notes Icon Visual Studio 2017 バージョン 15.6.4 サービス更新

2018 年 3 月 22 日にリリース

15.6.4 で修正された主な問題

以下は、ユーザーから報告され、このリリースで対処された問題です。


Release Notes Icon Visual Studio 2017 バージョン 15.6.5 サービス更新プログラム

2018 年 4 月 4 日にリリース

15.6.5 で修正された主な問題

以下は、ユーザーから報告され、このリリースで対処された問題です。


Release Notes Icon Visual Studio 2017 バージョン 15.6.6 サービス更新プログラム

2018 年 4 月 10 日にリリース

15.6.6 での更新の概要

CVE-2018-1037: Microsoft Visual Studio の情報漏えいの脆弱性に関する Microsoft セキュリティ アドバイザリ

Visual Studio でプログラム データベース (PDB) ファイルをコンパイル中に制限されていないメモリの内容が不適切に開示される場合に、情報漏えいの脆弱性が存在します。 この情報開示を利用した攻撃者は、PDB ファイルのコンパイルに使用された Visual Studio インスタンスから、初期化されていないメモリを閲覧することができます。

攻撃者がこの脆弱性を利用するには、脆弱なバージョンの Visual Studio を使用して作成された、影響を受ける PDB ファイルにアクセスする必要があります。 攻撃者は開発者に対して、この情報漏えいを強制的に実行させることはできません。

このセキュリティ更新プログラムは、プロジェクトのコンパイル時に PDB ファイルが生成される方法を修正することにより、この脆弱性を解決します。

重要

詳細については、CVE-2018-1037 のセキュリティ更新プログラムを参照してください。

15.6.6 で修正された主な問題

以下は、ユーザーから報告され、このリリースで対処された問題です。

  • このリリースでは、ソリューションが最初に読み込まれたときに、一部の Application Insights ユーザーに CodeLens 要求と例外インジケーターが表示されない問題が解決されています。

Release Notes Icon Visual Studio 2017 バージョン 15.6.7 サービス更新プログラム

2018 年 4 月 26 日にリリース

15.6.7 での更新の概要

  • Git 操作を実行するときの VS の応答性が向上しました。
  • /debug:fastlink PDB での大規模ソリューションのデバッグ処理がより堅牢になりました。 PDB/DIA での変更により、クラッシュの原因になっていた VS デバッガーでの待ち時間が縮小され、ヒープ メモリの消費量が 30% 削減されました。

15.6.7 で修正された主な問題

以下は、ユーザーから報告され、このリリースで対処された問題です。

  • C++ コンパイラのバグ修正:
    • __finally ハンドラーで使用された変数への格納の後で、SSA オプティマイザーが誤って関数呼び出しをシンクする問題を修正しました。
    • 負のオフセットを持つ場所からのメモリ読み込みを、SSA オプティマイザーが誤って分析することがある問題を修正しました。
    • オプティマイザーがインクリメント前ループをインクリメント後ループに誤って変換する問題を修正しました。 これは、ICU プロジェクトのコンパイルで見つかりました。
  • Java™ Development Kit 8 Update 172 (JDK バージョン 8u172) にアップグレードしました。

既知の問題

ご意見とご感想はすべて参考にさせていただいております。 開発者コミュニティ サイトにアクセスして、最新の問題を検索したり、新しい問題を投稿したり、既存の問題を更新したりします。 Visual Studio 2017 バージョン 15.6 のすべての既知の問題と回避策を参照できます。

Visual Studio 2017 の既知の問題


フィードバックと提案

皆様のご意見をお待ちしております。 問題がある場合は、インストーラーまたは Visual Studio IDE 自体の右上隅にある [問題の報告] オプションからお知らせください。 右上隅に 問題の報告アイコン アイコンがあります。 製品に関する提案をしたり、Visual Studio 開発者コミュニティで問題を追跡したりすることにより、質問、回答の検索、新機能を提案したりすることができます。 ライブ チャット サポートを介して、無料のインストールのヘルプを取得することもできます。


ブログ

開発者ツールのブログで提供されている洞察や推奨事項を活用すると、すべての新しいリリースに関する最新情報を入手し続けることができ、さまざまな機能について掘り下げた記事を参照することもできます。

開発者ツールのブログ


Visual Studio 2017 リリース ノート履歴

過去のバージョンの Visual Studio 2017 に関連する詳細については、「Visual Studio 2017 リリース ノート履歴」のページを参照してください。


ページの先頭へ