Visual Studio 2019 バージョン 16.4 リリース ノート
開発者コミュニティ | システム要件 | 互換性 | 頒布可能コード | リリース履歴 | ライセンス条項 | ブログ | Visual Studio のドキュメントの最新情報
Note
これは Visual Studio の最新バージョンではありません。 最新のリリースをダウンロードするには、 Visual Studio のサイトにアクセスしてください。
サポート期間
Visual Studio 2019 バージョン 16.4 は現在サポートされていません。
Visual Studio 2019 バージョン 16.4 の Enterprise と Professional のユーザーは、2021 月 10 月までサポートされ、セキュリティの脆弱性に対する修正プログラムを受け取ります。 この期間は、2020 年 8 月に Visual Studio 2019 バージョン 16.7 が Visual Studio 2019 製品の次のサービス ベースラインとして指定されたことによって決定されました。 Visual Studio でサポートされるベースラインの詳細については、Visual Studio 2019 のサポート ポリシーに関するページを参照してください。
最新バージョンのリリース ノートを参照するか、Visual Studio サイトにアクセスして、サポートされている最新バージョンの Visual Studio 2019 をダウンロードしてください。
Visual Studio 2019 バージョン 16.4 のリリース
- 2021 年 10 月 12 日 — Visual Studio 2019 バージョン 16.4.27
- 2021 年 9 月 14 日 — Visual Studio 2019 バージョン 16.4.26
- 2021 年 8 月 10 日 — Visual Studio 2019 バージョン 16.4.25
- 2021 年 7 月 13 日 — Visual Studio 2019 バージョン 16.4.24
- 2021 年 6 月 8 日 — Visual Studio 2019 バージョン 16.4.23
- 2021 年 5 月 11 日 — Visual Studio 2019 バージョン 16.4.22
- 2021 年 4 月 13 日 — Visual Studio 2019 バージョン 16.4.21
- 2021 年 3 月 9 日 — Visual Studio 2019 バージョン 16.4.20
- 2021 年 2 月 10 日 — Visual Studio 2019 バージョン 16.4.19
- 2021 年 2 月 9 日 — Visual Studio 2019 バージョン 16.4.18
- 2021 年 1 月 12 日 — Visual Studio 2019 バージョン 16.4.17
- 2020 年 12 月 8 日 — Visual Studio 2019 バージョン 16.4.16
- 2020 年 11 月 10 日 — Visual Studio 2019 バージョン 16.4.15
- 2020 年 10 月 13 日 — Visual Studio 2019 バージョン 16.4.14
- 2020 年 9 月 8 日 — Visual Studio 2019 バージョン 16.4.13
- 2020 年 8 月 11 日 — Visual Studio 2019 バージョン 16.4.12
- 2020 年 7 月 14 日 — Visual Studio 2019 バージョン 16.4.11
- 2020 年 6 月 9 日 — Visual Studio 2019 バージョン 16.4.10
- 2020 年 5 月 27 日 — Visual Studio 2019 バージョン 16.4.9
- 2020 年 5 月 12 日 — Visual Studio 2019 バージョン 16.4.8
- 2020 年 4 月 14 日 — Visual Studio 2019 バージョン 16.4.7
- 2020 年 3 月 10 日 — Visual Studio 2019 バージョン 16.4.6
- 2020 年 2 月 11 日 — Visual Studio 2019 バージョン 16.4.5
- 2020 年 1 月 30 日 — Visual Studio 2019 バージョン 16.4.4
- 2020 年 1 月 14 日 — Visual Studio 2019 バージョン 16.4.3
- 2019 年 12 月 17 日 — Visual Studio 2019 バージョン 16.4.2
- 2019 年 12 月 10 日 — Visual Studio 2019 バージョン 16.4.1
- 2019 年 12 月 3 日 — Visual Studio 2019 バージョン 16.4.0
アーカイブ済みのリリース ノート
- Visual Studio 2019 バージョン 16.3 リリース ノート
- Visual Studio 2019 バージョン 16.2 リリース ノート
- Visual Studio 2019 バージョン 16.1 リリース ノート
- Visual Studio 2019 バージョン 16.0 リリース ノート
Visual Studio 2019 ブログ
Visual Studio 2019 ブログ は、Visual Studio エンジニアリング チームからの製品の分析情報の公式な情報源です。 Visual Studio 2019 リリースの詳細については、次の投稿を参照してください。
- Visual Studio 2019 v16.4 リリースのシーズン
- Visual Studio 2019 バージョン 16.4 Preview 2、秋の味覚と風物詩
- Visual Studio 2019 バージョン 16.3 での .NET Core サポートなど - 今すぐ更新
- Visual Studio 2019 バージョン 16.3 Preview 2 および Visual Studio 2019 for Mac バージョン 8.3 Preview 2 がリリースされました
- Visual Studio 2019 バージョン 16.2 および 16.3 Preview 1 が利用できるようになりました
- Visual Studio 2019 バージョン 16.2 Preview 2
- Visual Studio 2019 バージョン 16.1 と 16.2 Preview
- Visual Studio 2019: コードの高速化。 作業をよりスマートに。 未来を作る
Visual Studio 2019 バージョン 16.4 で作成されたすべての開発者コミュニティ項目の完全な一覧を表示します
Visual Studio 2019 バージョン 16.4.27
リリース日: 2021 年 10 月 12 日
Visual Studio 2019 バージョン 16.4.27 で対処された主な問題
セキュリティ アドバイザリ メモ
CVE-2021-1971 OpenSSL サービス拒否の脆弱性
Git によって使用される OpenSSL ライブラリに、潜在的なサービス拒否の脆弱性が存在します。
CVE-2021-3449 OpenSSL サービス拒否の脆弱性
Git によって使用される OpenSSL ライブラリに、潜在的なサービス拒否の脆弱性が存在します。
CVE-2021-3450 OpenSSL サービス拒否の脆弱性
Git によって使用される OpenSSL ライブラリに、潜在的なフラグ バイパスが存在します。
Visual Studio 2019 バージョン 16.4.26
リリース日: 2021 年 9 月 14 日
Visual Studio 2019 バージョン 16.4.26 で対処された主な問題
セキュリティ アドバイザリ メモ
CVE-2021-26434 Visual Studio での不正なアクセス許可割り当てによる特権の昇格の脆弱性
Visual Studio では、C++ によるゲーム開発をインストールし、Unreal Engine インストーラー ワークロードを選択した後、アクセス許可割り当ての脆弱性が生じます。 インストール中、システムは LPE に対して脆弱です。すべてのユーザーへの書き込みアクセス権を使用してディレクトリが作成されます。
CVE-2021-36952 Visual Studio のリモート コード実行の脆弱性
Visual Studio でメモリ内のオブジェクトが適切に処理されなかった場合、リモートでコードが実行されてしまう脆弱性が存在します。 脆弱性の悪用に成功した攻撃者は、現在のユーザーのコンテキストで任意のコードを実行することができます。
Visual Studio 2019 バージョン 16.4.25
''リリース日: 2021 年 8 月 10 日''
Visual Studio 2019 バージョン 16.4.25 で対処された主な問題
- update コマンドのコマンド ライン実行に影響していた問題を修正しました。 更新が初めて失敗した場合、その後に update コマンドを発行すると、更新によって前の操作が中断した箇所から再開されるようになりました。
セキュリティ アドバイザリ メモ
CVE-2021-26423 .NET Core のサービス拒否の脆弱性
サービス拒否の脆弱性があり、WebSocket エンドポイントを提供する .NET (Core) サーバー アプリケーションが、1 つの WebSocket フレームを読み取ろうとしている間に、無限ループに陥る可能性があります。
CVE-2021-34485 .NET Core 情報漏えいの脆弱性
必要に応じてクラッシュ ダンプとダンプを収集するツールによって作成されたダンプが、Linux および macOS のグローバル読み取りアクセス許可を使用して作成されるときに、情報漏えいの脆弱性が存在します。
CVE-2021-34532 ASP.NET Core 情報漏えいの脆弱性
情報漏えいの脆弱性は、JWT トークンが解析できない場合にログに記録される場所に存在します。
Visual Studio 2019 バージョン 16.4.24
リリース日: 2021 年 7 月 13 日
Visual Studio 2019 バージョン 16.4.24 で対処された主な問題
- .NET 3.1.117 SDK が Visual Studio 2019 に追加されました。
Visual Studio 2019 バージョン 16.4.23
リリース日: 2021 年 6 月 8 日
Visual Studio 2019 バージョン 16.4.23 で修正された主な問題
セキュリティ アドバイザリ メモ
CVE-2021-31957 ASP.NET サービス拒否の脆弱性
ASP.NET Core によってクライアントの切断が不適切に処理される場合、サービス拒否の脆弱性が存在します。
Visual Studio 2019 バージョン 16.4.22
リリース日: 2021 年 5 月 11 日
Visual Studio 2019 バージョン 16.4.22 で修正された主な問題
- 管理者が更新プログラムを配置するために Visual Studio の新しいレイアウトを作成するときに、更新が失敗する原因になっていた問題を修正しました。 レイアウトの場所が移動されていたため、クライアント コンピューターの更新が失敗します。
セキュリティ アドバイザリ メモ
CVE-2021-27068 入れ子になったフォルダーに python.exe を配置するときに RCE が可能
Python コードを使用してワークスペースを開くとき、そのワークスペースの scripts サブフォルダーに python.exe が含まれていると、リモート コード実行の脆弱性が存在します。
CVE-2021-31204 .NET Core の特権の昇格脆弱性
.NET 5.0 と .NET Core 3.1 には、Linux または macOS ベースのオペレーティング システムで単一ファイルのアプリケーションを実行するときに、特権の昇格の脆弱性が存在します。
Visual Studio 2019 バージョン 16.4.21
"リリース日: 2021 年 4 月 13 日"
Visual Studio 2019 バージョン 16.4.21 で修正された主な問題
セキュリティ アドバイザリ メモ
CVE-2021-27064 Visual Studio インストーラーの特権の昇格の脆弱性
リモートでのコード実行の脆弱性は、Visual Studio インストーラーによって、フィードバック クライアントが昇格された状態で実行された場合に発生します。
CVE-2021-28313 / CVE-2021-28321 / CVE-2021-28322 診断ハブ標準コレクター サービスの特権の昇格の脆弱性
診断ハブ標準コレクターがデータ操作を適切に処理しなかった場合、特権の昇格の脆弱性が存在します。
Visual Studio 2019 バージョン 16.4.20
"リリース日: 2021 年 3 月 9 日"
Visual Studio 2019 バージョン 16.4.20 で修正された主な問題
セキュリティ アドバイザリ メモ
CVE-2021-21300 Git for Visual Studio のリモート コード実行の脆弱性
Visual Studio を使用して悪意のあるリポジトリを複製するときに、リモート コード実行の脆弱性が存在します。
CVE-2021-26701 .NET Core のリモート コード実行の脆弱性
テキスト エンコードの実行方法が原因で、.NET 5 と .NET Core にリモート コード実行の脆弱性が存在します。
Visual Studio 2019 バージョン 16.4.19
"リリース日: 2021 年 2 月 10 日"
Visual Studio 2019 バージョン 16.4.19 で修正された主なイシュー
Visual Studio 2019 バージョン 16.4.18
リリース日: 2021 年 2 月 9 日
Visual Studio 2019 バージョン 16.4.18 で修正された主なイシュー
セキュリティ アドバイザリ メモ
CVE-2021-1639 TypeScript 言語サービスのリモート コード実行の脆弱性
Visual Studio で、JavaScript または TypeScript コード ファイルが含まれる悪意のあるリポジトリを読み込む場合、リモート コード実行の脆弱性が存在します。
CVE-2021-1721 .NET Core のサービス拒否の脆弱性
X509 証明書チェーンの構築中に HTTPS Web 要求を作成する場合、サービス拒否の脆弱性が存在します。
CVE-2021-24112 .NET 5 および .NET Core のリモート コード実行の脆弱性
メタファイルを破棄するときにグラフィックス インターフェイスにそのメタファイルへの参照が残っている場合、リモート コード実行の脆弱性が存在します。 この脆弱性は、MacOS または Linux で実行されているシステムにのみ存在します。
Visual Studio 2019 バージョン 16.4.17
リリース日: 2020 年 1 月 12 日
Visual Studio 2019 バージョン 16.4.17 で修正された主なイシュー
セキュリティ アドバイザリ メモ
CVE-2021-1651 / CVE-2021-1680 診断ハブ標準コレクター サービスの特権の昇格の脆弱性
診断ハブ標準コレクターがデータ操作を適切に処理しなかった場合、特権の昇格の脆弱性が存在します。
CVE-2020-26870 Visual Studio インストーラーのリモート コード実行の脆弱性
Visual Studio インストーラーが悪意のあるマークダウンを表示しようとする場合、リモート コード実行の脆弱性が存在します。
CVE-2021-1723 .NET Core と Visual Studio のサービス拒否の脆弱性
Kestrel の実装にサービス拒否の脆弱性が存在します。
Visual Studio 2019 バージョン 16.4.16
"リリース日: 2020 年 12 月 8 日"
Visual Studio 2019 バージョン 16.4.16 で修正された主なイシュー
セキュリティ アドバイザリ メモ
CVE-2020-17156 Visual Studio のリモート コード実行の脆弱性
Visual Studio を使用して悪意のあるリポジトリを複製するときに、リモート コード実行の脆弱性が存在します。
Visual Studio 2019 バージョン 16.4.15
リリース日: 2020 年 11 月 10 日
Visual Studio 2019 バージョン 16.4.15 で修正された主なイシュー
セキュリティ アドバイザリ メモ
CVE-2020-17100 Visual Studio の改ざんの脆弱性
Python Tools for Visual Studio によって python27 フォルダーが作成された場合、改ざんの脆弱性が存在します。 この脆弱性の悪用に成功した攻撃者は、昇格されたコンテキストでプロセスを実行できます。
Visual Studio 2019 バージョン 16.4.14
リリース日: 2020 年 10 月 13 日
Visual Studio 2019 バージョン 16.4.14 で修正された主なイシュー
- 特定の Intel プロセッサ上での JCC エラッタのパフォーマンスへの影響を軽減するオプトイン フラグが追加されました。
- PGO MEMMAX スイッチは、ユーザー入力がより尊重される方法で動作するようになります。
- PGO のプロファイルに予約されるメモリ量が削減されました。
- .NET Core 2.1.13 Runtime と 3.1.109 SDK (3.1.9) が Visual Studio 2019 に追加されました。
Visual Studio 2019 バージョン 16.4.13
リリース日: 2020 年 9 月 8 日
Visual Studio 2019 バージョン 16.4.13 で修正された主なイシュー
セキュリティ アドバイザリ メモ
CVE-2020-1130 診断ハブ標準コレクターの特権の昇格の脆弱性
診断ハブ標準コレクターがデータ操作を適切に処理しなかった場合、特権を昇格できる脆弱性が存在します。 この脆弱性の悪用に成功した攻撃者は、昇格されたコンテキストでプロセスを実行できます。
CVE-2020-1133 診断ハブ標準コレクターの特権の昇格の脆弱性
診断ハブ標準コレクターがファイル操作を適切に処理しなかった場合、特権を昇格できる脆弱性が存在します。 この脆弱性の悪用に成功した攻撃者は、昇格されたコンテキストでプロセスを実行できます。
CVE-2020-16856 Visual Studio のリモート コード実行の脆弱性
Visual Studio でメモリ内のオブジェクトが適切に処理されなかった場合、リモートでコードが実行されてしまう脆弱性が存在します。 脆弱性の悪用に成功した攻撃者は、現在のユーザーのコンテキストで任意のコードを実行することができます。
CVE-2020-16874 Visual Studio のリモート コード実行の脆弱性
Visual Studio でメモリ内のオブジェクトが適切に処理されなかった場合、リモートでコードが実行されてしまう脆弱性が存在します。 脆弱性の悪用に成功した攻撃者は、現在のユーザーのコンテキストで任意のコードを実行することができます。
CVE-2020-1045 Microsoft ASP.NET Core のセキュリティ機能バイパスの脆弱性
セキュリティ機能のバイパスの脆弱性は、Microsoft ASP.NET コアによるエンコードされた Cookie 名の解析方法に存在します。 ASP.NET Core Cookie パーサーは Cookie 文字列全体をデコードします。これにより、悪意のある攻撃者によって、名前がパーセント エンコーディングされた 2 番目の Cookie が設定される可能性があります。
16.4.13 のその他の修正プログラム
- C++ のビルドのキャンセル後に、Visual Studio または MSBuild の応答が時折停止するイシューを修正しました。
- .NET Core のサポート対象外のバージョンが、Visual Studio のセットアップ時以外で削除されている場合、修復またはアップグレード時に再インストールされなくなりました。
Visual Studio 2019 バージョン 16.4.12
リリース日: 2020 年 8 月 11 日
Visual Studio 2019 バージョン 16.4.12 で修正された主なイシュー
セキュリティ アドバイザリ メモ
CVE-2020-1597
ASP.NET Core によって Web 要求が不適切に処理されない場合、サービス拒否の脆弱性が存在します。 攻撃者がこの脆弱性を悪用して、ASP.NET Core Web アプリケーションに対するサービス拒否を発生させる可能性があります。 この脆弱性はリモートで、認証なしで悪用できます。
Visual Studio 2019 バージョン 16.4.11
リリース日: 2020 年 7 月 14 日
Visual Studio 2019 バージョン 16.4.11 で修正された主なイシュー
- C/C++ のコード分析が応答を停止することがあるバグを修正しました。
- setjmp 後に間違った値が復元される可能性があるバグを修正しました。
- 1.0 および 2.0 の .NET Core ランタイムは、セットアップ UI で "サポート対象外" とマークされており、すべてのシナリオでオプションになりました。
セキュリティ アドバイザリ メモ
CVE-2020-1393 診断ハブ標準コレクター サービスの特権の昇格の脆弱性
Windows Diagnostics Hub Standard Collector Service が入力を正しくサニタイズできない場合、特権の昇格の脆弱性が存在し、ライブラリ読み込み動作が安全でなくなります。
CVE-2020-1416 Visual Studio の特権の昇格の脆弱性
Visual Studio でソフトウェアの依存関係を読み込むときに、特権の昇格の脆弱性が存在します。
CVE-2020-1147 .NET Core のサービス拒否の脆弱性
認証を受けていないリモートの攻撃者が、特別に作成された要求を ASP.NET Core アプリケーションや、特定の型の XML を解析する他のアプリケーションに発行して、この脆弱性を悪用する可能性があります。 このセキュリティ更新プログラムは、XML ペイロード内に存在できる型を制限することで、脆弱性に対処します。
Visual Studio 2019 バージョン 16.4.10
リリース日: 2020 年 6 月 9 日
Visual Studio 2019 バージョン 16.4.10 で修正された主なイシュー
- setjmp 後に間違った値が復元される可能性があるバグを修正しました。
セキュリティ アドバイザリ メモ
CVE-2020-1108 / CVE-2020-1108.NET Core のサービス拒否の脆弱性
CVE-2020-1108 に包括的に対応するために、Microsoft は .NET Core 2.1 および .NET Core 3.1 の更新プログラムをリリースしました。 これらのバージョンの .NET Core を使用しているお客様は、最新バージョンの .NET Core をインストールする必要があります。 .NET Core を更新する場合の最新のバージョン番号と手順については、リリース ノートを参照してください。
CVE-2020-1202 / CVE-2020-1203 診断ハブ標準コレクター サービスの特権の昇格の脆弱性
診断ハブ標準コレクターまたは Visual Studio 標準コレクターがメモリ内のオブジェクトを正しく処理できない場合、特権の昇格の脆弱性が存在します。
CVE-2020-1293 / CVE-2020-1278 / CVE-2020-1257 診断ハブ標準コレクター サービスの特権の昇格の脆弱性
診断ハブ標準コレクター サービスによってファイル操作が適切に処理されない場合、特権の昇格の脆弱性が存在します。
Visual Studio 2019 バージョン 16.4.9
リリース日: 2020 年 5 月 27 日
Visual Studio 2019 バージョン 16.4.9 で修正された主なイシュー
- これにより、最適化で使用される分析のキャッシュのバグが修正され、誤って不要とマークされた命令が削除されることがなくなります。 この修正プログラムでは古いデータがキャッシュに保存されるケースが検出されます。 これがどのようなケースかを全体として特徴づけるのは難しいですが、ループ内のインデックスでのモジュロ演算がレポートにありました。 今後のため、(未サポートの) /d2ssa-bit-estimator- フラグを追加して、特定の最適化を全体的にオフにしました。 このフラグは修正プログラムで追加されたため、以前のバージョンには存在しません。
- 特定の Intel プロセッサでの Intel ジャンプ条件コード (JCC) Erratum マイクロコード更新によって引き起こされるパフォーマンスへの影響を軽減するためのサポートが追加されました。
- ラムダ ローカル変数によって発生するコード分析中の cl.exe での誤った C6244 警告とクラッシュが修正されました。
- Office コードに対して実行されている PREfast 16.5 の ICE
Visual Studio 2019 バージョン 16.4.8
リリース日: 2020 年 5 月 12 日
Visual Studio 2019 バージョン 16.4.8 で修正された主なイシュー
- 企業の IT 管理者と展開エンジニアが、Microsoft Update Catalog と WSUS でホストされている VS2019 16.4 更新プログラムを適用できるかを判断するために Microsoft Update クライアントや SCCM などのツールを構成できるようにするための変更を追加します。
セキュリティ アドバイザリ メモ
CVE-2020-1108 .NET Core のサービス拒否の脆弱性
認証を受けていないリモートの攻撃者が、特別に作成された要求を .NET Core アプリケーションに発行して、この脆弱性を悪用する可能性があります。 このセキュリティ更新プログラムでは、.NET Core Web アプリケーションによる Web 要求の処理方法を修正することで、脆弱性に対処します。
CVE-2020-1161 .NET Core のサービス拒否の脆弱性
認証を受けていないリモートの攻撃者が、特別に作成された要求を ASP.NET Core アプリケーションに発行して、この脆弱性を悪用する可能性があります。 このセキュリティ更新プログラムでは、ASP.NET Core Web アプリケーションによる Web 要求の処理方法を修正することで、脆弱性に対処します。
Visual Studio 2019 バージョン 16.4.7
リリース日: 2020 年 4 月 14 日
Visual Studio 2019 バージョン 16.4.7 で修正された主なイシュー
セキュリティ アドバイザリ メモ
CVE-2020-0899 Microsoft Visual Studio の特権の昇格の脆弱性
特権の昇格脆弱性は、Microsoft Visual Studio アップデーター サービスがファイルのアクセス許可を正しく処理しないときに発生します。 攻撃者がこの脆弱性を悪用すると、ローカル システムのセキュリティ コンテキストで任意のファイルの内容が上書きされる可能性があります。
CVE-2020-0900 Visual Studio 拡張機能インストーラー サービスの特権の昇格脆弱性
特権の昇格脆弱性は、Visual Studio 拡張機能インストーラー サービスがファイル操作を正しく処理しないときに発生します。 この脆弱性の悪用に成功した攻撃者は、昇格されたアクセス許可を使用して任意の場所にあるファイルを削除できます。
CVE-2020-5260 URL に対する検証が不十分なことが原因で発生する Git for Visual Studio の資格情報リークの脆弱性
資格情報リークの脆弱性は、特別に細工された URL が解析され、資格情報ヘルパーに送信されると発生します。 これにより、資格情報が間違ったホストに送信される可能性があります。
Visual Studio 2019 バージョン 16.4.6
リリース日: 2020 年 3 月 10 日
Visual Studio 2019 バージョン 16.4.6 で修正された主なイシュー
- コンパイルが失敗し、ブール条件が常に true と推測される。
- Visual Studio 2019 コンパイラでのループ アンロールに関するイシュー
- Docker ボリューム フォルダーでビルドすると CL (VC v19.24) がクラッシュする
- CL (VC v19.22) を Docker コンテナーで /ZI パラメーターを使用して開始するとクラッシュする
- MSVC コンパイラ 19.20 での SSE 組み込み関数のコンパイル: コンパイルされたコードの特定のケースで正しくない結果が生成される
- C++ AMP コードが Visual Studio 2019 16.3.1 でコンパイルされない
- coroutine_handle<>::destroy() でコルーチンが破棄される代わりに再開される場合がある。
- C++ コンパイラの新しい Spectre 軽減策オプション: 投機的読み込みの強化のための /Qspectre-load と /Qspectre-load-cf。
セキュリティ アドバイザリ メモ
CVE-2020-0793 と CVE-2020-0810 診断ハブ標準コレクター サービスの特権の昇格の脆弱性
Diagnostics Hub Standard Collector がファイル操作を不適切に処理した場合、または Windows Diagnostics Hub Standard Collector Service が入力を正しくサニタイズできない場合、特権の昇格の脆弱性が存在します。
CVE-2020-0884 Outlook Web アドインの作成時のスプーフィングの脆弱性
多要素認証が有効になっている場合に Outlook Web アドインを作成すると、スプーフィングに SSL でセキュリティ保護されない応答 URL が含まれ、脆弱性が発生します。 攻撃者がこの脆弱性を悪用すると、アクセス トークンが侵害され、セキュリティとプライバシーのリスクが生じる可能性があります。
CVE-2020-0789 Visual Studio 拡張機能インストーラー サービスのサービス拒否の脆弱性
Visual Studio 2019 バージョン 16.4.5
リリース日: 2020 年 2 月 11 日
Visual Studio 2019 バージョン 16.4.5 で修正された主なイシュー
- マージの競合: "ソースの取得"/"ターゲットの保持" が見つかりません
- UWP アプリケーションをデバッグしようとするとクラッシュする
- データベース プロジェクトのターゲット プラットフォーム azure v12 を選択できない
- 再起動を必要とするインストール操作の後に Visual Studio を実行したときに発生する可能性があるクラッシュまたはエラーを修正しました。
- Xamarin.Android アプリの展開に関するイシューを修正しました。 以前は、デバイスまたはエミュレーターからアプリを手動でアンインストールする必要がありました。
- この変更により、コンパイラが C++ コルーチンの命令が誤って削除されるバグが修正されます。
Visual Studio 2019 バージョン 16.4.4
リリース日: 2020 年 1 月 30 日
Visual Studio 2019 バージョン 16.4.4 で修正された主なイシュー
- カスタム プロジェクト テンプレートが見つからない
- ネイティブ C++ コードでブレークポイントにヒットすると、msvsmon.exe がクラッシュする
- ソリューション エクスプローラーでフォルダーを検索し、[ホーム] または検索ボックスの [X] をクリックします。 ビューがリセットされます。
- 外部ツールの引数の現在の行が常に 0 になる。
- v3 関数プロジェクトを作成できない。
- VS 2019 Update 16.4.3 に更新した後、場所 0xFFFFFFFFFFFFFFFF の 読み取り中にアクセス違反が発生しました
- 16.4 で関数アプリを作成できない
- MSVC2019 で AVX-512 命令が AVX/AVX2 モードで生成される
- rsqrtss による不適切なコード生成 (レジスタの上書き)
- FastLink の呼び出し履歴を表示すると、Visual Studio 2019 デバッガーがクラッシュする。
- C#: 属性コンストラクターがそれ自体で修飾され、null 許容参照型が有効になっているときに発生したクラッシュを修正しました。
- ループをアンロールするときに (extern int a [] として宣言されている) 不確定な長さの配列の別名情報を追跡できず、誤ったデッドストアの削除が行われる最適化分析のバグを修正しました。
Visual Studio 2019 バージョン 16.4.3
リリース日: 2020 年 1 月 14 日
セキュリティ アドバイザリ メモ
CVE-2020-0602 ASP.NET Core サービス拒否の脆弱性
認証を受けていないリモートの攻撃者が、特別に作成された要求を ASP.NET Core アプリケーションに発行して、この脆弱性を悪用する可能性があります。 このセキュリティ更新プログラムでは、ASP.NET Core Web アプリケーションによる Web 要求の処理方法を修正することで、脆弱性に対処します。
CVE-2020-0603 ASP.NET Core のリモート コード実行の脆弱性
認証を受けていないリモートの攻撃者が、特別に作成された要求を ASP.NET Core アプリケーションに発行して、この脆弱性を悪用する可能性があります。 このセキュリティ更新プログラムでは、ASP.NET Core Web アプリケーションによるメモリ内の処理方法を修正することで、脆弱性に対処します。
CVE-2020-0605 .NET Core のリモート コード実行の脆弱性
脆弱性を悪用するには、対象となるバージョンの .NET Core で、特別に細工されたファイルをユーザーが開く必要がります。 ある電子メール攻撃のシナリオでは、攻撃者は特別に細工されたファイルをユーザーに送信し、そのファイルを開くようユーザーに納得させることで、脆弱性を悪用する可能性があります。このセキュリティ更新プログラムでは、.NET Core がファイルのソース マークアップを確認する方法を修正することによって、脆弱性に対処します。
CVE-2020-0606 .NET Core のリモート コード実行の脆弱性
脆弱性を悪用するには、対象となるバージョンの .NET Core で、特別に細工されたファイルをユーザーが開く必要がります。 ある電子メール攻撃のシナリオでは、攻撃者は特別に細工されたファイルをユーザーに送信し、そのファイルを開くようユーザーに納得させることで、脆弱性を悪用する可能性があります。このセキュリティ更新プログラムでは、.NET Core がファイルのソース マークアップを確認する方法を修正することによって、脆弱性に対処します。
Visual Studio 2019 バージョン 16.4.3 で修正された主な問題
- DateTime.Now = 値を指定できない: ホスト値が見つからない
- MSVC codegen エラーのベクトル reverse_iterator x64 C++17 デバッグ ビルド
- VS 16.4 プレビュー 1 での /permissive- を使用した atlenc.h ビルド時の C2440 エラー
- Visual Studio の最新の更新プログラムで Android の NTLM 認証が壊れました (新しいバージョンの Momo が原因のようです)
- Visual Studio 16.3.1 でのテンプレート コードのコンパイル失敗 (Basler Pylon SDK などから)
- IntelliSense での TypeScript 3.7 の使用
- 8.4 に更新したら XCode 11.3 が新しすぎて使えない
- 一部のファイルの署名情報が無効または欠落している APK または Android アプリ バンドルをアップロードしました。 有効な署名済み APK または Android アプリ バンドルを作成する必要があります。
- UWP プロジェクトを実行できない
- 16.4.1 更新後に JavaScript IntelliSense が動作しない
- Xib : Xcode が新しすぎる (カスタム コンポーネント使用時のレンダリングの問題)
- ストーリーボード エラー: 'Xcode が新しすぎます'
- watchOS アプリケーションのデバッグに関する安定性の向上。
- Xcode 11.3 SDK サポートを追加。
- fstack-protector-strong フラグが有効になっている場合のクラッシュを修正しました。
- デバッガーでの一貫性のない動作をいくつか修正しました。
Visual Studio 2019 バージョン 16.4.2
リリース日: 2019 年 12 月 17 日
Visual Studio 2019 バージョン 16.4.2 で修正された主要なイシュー
- VS2019 Preview 4 の C# で条件付きコンパイルのシンボルが破損した
- API が非推奨になった
- 最新リリース 16.4 で Android のデバッグが機能しない "デバッグ対象からエラー コード INVALID_ARGUMENT が返された"
- エディターの使用中に発生する可能性があった UI の頻繁な遅延を修正しました。
- C# の使用中に、属性コンストラクターがそれ自体で修飾され、null 許容参照型が有効になっているときに発生したクラッシュを、修正しました。
- 仮想マシンの特定のセットアップで、Visual Studio が起動しない、または C# ソリューションの読み込み時にクラッシュする原因であった問題を修正しました。
- ビルド プロパティ ページを開き直すとユーザー定義の条件付きコンパイル シンボルが失われるバグを修正しました。
Visual Studio 2019 バージョン 16.4.1
リリース日: 2019 年 12 月 10 日
Visual Studio 2019 バージョン 16.4.1 で修正された主要なイシュー
- データベースを発行しようとすると発生した "書き込み操作に失敗しました。 最初に dataschemamodelcontroller から書き込みアクセス権を取得する必要があります" エラーを修正しました
- iOS デバイスの一部の構成で SignalR を使用したときの ExecutionEngineException 例外を修正しました
- 一部のライブラリでインタープリターを有効にしたときの "CEE_RET: 値型スタック" のクラッシュに関するランタイム修正
- TypeScript 3.7.3 が既定で含まれるようになりました。これには、JavaScript および TypeScript の編集エクスペリエンスに影響するいくつかの問題の修正が含まれています。
- Visual Studio でのモニターごとの認識関連のクラッシュを軽減できる場合がある
セキュリティ アドバイザリ メモ
CVE-2019-1349 サブモジュール名に対する制限が緩すぎることが原因で発生する Git for Visual Studio のリモート実行脆弱性
兄弟サブモジュールのディレクトリ用のサブモジュール名の衝突が Git で発生している場合には、リモート コード実行の脆弱性が存在します。 この脆弱性を悪用した攻撃者によって、ターゲット コンピューター上のコードがリモートで実行される可能性があります。 セキュリティ更新プログラムでは、新しいバージョンの Git for Windows を使用してこの脆弱性に対処します。このバージョンでは、サブモジュールのクローン用のディレクトリを空にする必要があります。
CVE-2019-1350 コマンドライン引数の引用が正しくないことが原因で発生する Git for Visual Studio のリモート実行脆弱性
SSH URL と組み合わせた再帰クローン中に特定の方法で引用されたコマンドライン引数が解釈される場合には、リモート コード実行脆弱性が存在します。 この脆弱性を悪用した攻撃者によって、ターゲット コンピューター上のコードがリモートで実行される可能性があります。 セキュリティ更新プログラムでは、この問題を解決する新しいバージョンの Git for Windows を使用して脆弱性に対処します。
CVE-2019-1351 クローン中にアルファベット以外のドライブ名が使用されることが原因で発生する Git for Visual Studio の任意のファイル上書き脆弱性
アルファベット以外のドライブ名によって git clone
での安全性チェックが省略される場合、Git には任意のファイル上書き脆弱性が存在します。 この脆弱性を悪用した攻撃者によって、ターゲット コンピューター上の任意のファイルに対して書き込みが行われる可能性があります。 セキュリティ更新プログラムでは、この問題を解決する新しいバージョンの Git for Windows を使用して脆弱性に対処します。
CVE-2019-1352 NTFS 代替データストリームを認識しないことが原因で発生する Git for Visual Studio のリモート実行脆弱性
NTFS 代替データ ストリームを介して git/ ディレクトリにクローンおよび書き込みを行う場合には、リモート コード実行脆弱性が存在します。 この脆弱性を悪用した攻撃者によって、ターゲット コンピューター上のコードがリモートで実行される可能性があります。 このセキュリティ更新プログラムでは、NTFS 代替データ ストリームを認識するようになった新しいバージョンの Git for Windows を使用して脆弱性に対処します。
CVE-2019-1354 バックスラッシュを含む追跡対象ファイルの書き出しを拒否しないことが原因で発生する Git for Visual Studio の任意のファイル上書き脆弱性
バックスラッシュや悪意のあるシンボリック リンクを含むツリー エントリが処理ツリーを抜け出す可能性がある場合には、Git に任意のファイル上書き脆弱性が存在します。 この脆弱性を悪用した攻撃者によって、ターゲット コンピューター上の任意のファイルに対して書き込みが行われる可能性があります。 セキュリティ更新プログラムでは、このようなバックシュラッシュの使用を許可しない新しいバージョンの Git for Windows を使用して脆弱性に対処します。
CVE-2019-1387 再帰的なクローンにおいてサブモジュール名の検証が緩すぎることが原因で発生する Git for Visual Studio のリモート実行脆弱性
サブモジュールで再帰的なクローンを行う場合は、Git にリモート コード実行脆弱性が存在します。 この脆弱性を悪用した攻撃者によって、ターゲット コンピューター上のコードがリモートで実行される可能性があります。 セキュリティ更新プログラムでは、サブモジュール名の検証を強化した新しいバージョンの Git for Windows を使用して脆弱性に対処します。
CVE-2019-1486 Live Share の拡張 URL リダイレクト脆弱性
Live Share セッションに接続されているゲストが、セッション ホストによって指定された任意の URL にリダイレクトされたときに、Visual Studio Live Share 拡張機能でスプーフィング脆弱性が検出されました。 攻撃者は、この脆弱性を悪用し、ゲストのコンピューターでブラウザーを開き、明示的な同意なしに悪意のある URL に移動できるようになっている可能性があります。 これは、アクティブな Live Share セッション中に自動ポート転送を許可する Live Share の "共有サーバー" 機能の一部でした。 最新の更新プログラムでは、ホストが指定した URL を参照する前に Live Share ゲストの同意を取り消すことで、この脆弱性に対処します。
Visual Studio 2019 バージョン 16.4
リリース日: 2019 年 12 月 3 日
Visual Studio 2019 バージョン 16.4 の新機能の概要
- Visual Studio で "FIPS 準拠モード" がサポートされました。
- XAML デザイナーのズーム/位置の既定が [全体を表示] になりました。
- [データ バインドの作成] ダイアログが追加されました。
- regions の IntelliSense の機能強化
- XAML IntelliSense でのスニペット
- デザイナーとは別のウィンドウでのポップアップ XAML エディター
- 参照されているアセンブリのリソースの表示
- ライブ ビジュアル ツリーでの [自分の XAML のみ表示]
- リソース ディクショナリのマージ
- XAML Islands のサポート
- [テンプレートの編集] が、サードパーティのコントロールで機能するようになりました。
- Clang と MSVC の両方に対する、C++ MSBuild および CMake プロジェクトでの Clang-Tidy サポート。
- Windows 用 MSVC でコンパイルされたプロジェクトの AddressSanitizer サポート。
- ローカル Git リポジトリを GitHub に公開するためのサポート。
- ご利用のドキュメント タブを縦書きドキュメント タブを使用した縦レイアウトに変更します。
- このリリースの .NET の生産性の追加事項には、エラー リストでコード スタイル ルールの重要度レベルを直接構成する機能、[すべての参照の検索] に今回追加された種類およびメンバーごとにグループ化するオプション、ローカル関数を静的にして関数の外部で定義された変数を関数の宣言および呼び出しに渡すリファクタリングが含まれています。
- 新しいピン留め可能なプロパティ機能を使用して、デバッガー ウィンドウでのオブジェクトの表示方法を簡単にカスタマイズできます。
- コンテナー ツール ウィンドウにより、Docker コンテナーとイメージを検査、停止、開始、削除する機能が追加されました。
- ツール ウィンドウを自動的に非表示にすることで起動パフォーマンスを改善するオプション
- 発行の依存関係を管理する場合、または接続済みサービスを使用する場合の、SQL Server および Azure Storage 接続文字列の自動検出
- 64 ビット ランタイムを使用する Azure Functions の開発サポートが追加されました。
- .NET Core 3.0 アプリ発行オプション (実行準備完了 (Crossgen)、リンク、SingleExe) のサポートを追加しました
- このリリースでの .NET の生産性の追加には、エディターを使用してコード スタイル ルールの重大度レベルを直接構成する機能、新しい [Go To Base]\(ベースに移動\) コマンドを使用する簡単な継承チェーンでの上への移動、すべてのパラメーターに対する null チェックの追加、およびメソッドをオーバーライドするための XML ドキュメントが含まれます。
- Xamarin.Forms 用の XAML ホット リロード
- Android アプリ バンドルの発行
- AndroidX 移行ウィザード
- Android レイアウトの lint
Visual Studio 2019 バージョン 16.4 の新機能の詳細
Visual Studio で "FIPS 準拠モード" をサポート
バージョン 16.4 より、Windows、Azure、.NET 用のアプリとソリューションを開発するときに、Visual Studio 2019 で "FIPS 140-2 準拠モード" がサポートされるようになりました。 Linux、iOS、Android などの Microsoft 以外のプラットフォーム向けのアプリやソリューションを開発している場合、これらのプラットフォームでは、FIPS 140-2 の承認されたアルゴリズムを使用できない可能性があります。 Visual Studio に含まれているサードパーティ製ソフトウェアまたはユーザーがインストールする拡張機能でも、FIPS 140-2 の承認されたアルゴリズムを使用できない場合があります。 また、SharePoint ソリューションの開発では、FIPS 140-2 準拠モードはサポートされていません。
Visual Studio の FIPS 140-2 準拠モードを構成するには .NET Framework 4.8 をインストールし、次の Windows グループ ポリシー設定を有効にします: "システム暗号: 暗号化、ハッシュ、署名のための FIPS 準拠アルゴリズムを使う。"
WPF/UWP ツール
WPF/UWP アプリケーションを構築しているお客様は、Visual Studio XAML ツールの次の点が改善されます。
Designer
- XAML デザイナーのズーム/位置の既定が [全体を表示] になりました: お客様からのフィードバックに基づいて、XAML ウィンドウ/ページ/コントロールなどを開いたときに発生する既定の XAML デザイナーのズーム動作を再評価しました。以前のエクスペリエンスでは、Visual Studio セッション間で各ファイルのズーム レベルと位置が保存されていたため、顧客がしばらく時間を空けてファイルに戻ったときに混乱が発生しました。 このリリース以降、ズーム レベルと位置の保存はアクティブなセッションの期間だけ行われ、Visual Studio を再起動すると既定の [全体を表示] に戻ります。
- [データ バインドの作成] ダイアログ: Visual Studio では、WPF .NET Framework 開発者は、XAML デザイナーとプロパティ エクスプローラーの右クリックからデータ バインド ダイアログを使用でき、このダイアログは以前は UWP 開発者も利用できました。 このリリースでは、このエクスペリエンスを UWP 開発者に戻し、WPF .NET Core アプリケーションのサポートが追加されています。 この機能はまだ開発段階にあり、今後も改善され、.NET Framework ダイアログ機能との機能パリティが戻るようになります。
XAML エディター
- #regions の IntelliSense の機能強化: Visual Studio 2015 以降、#region のサポートが WPF と UWP の XAML 開発者に提供され、最近になって Xamarin.Forms にも提供されています。 今回のリリースでは、IntelliSense のバグが修正され、これにより <! の入力を始めたときに #regions が正しく表示されるようになりました。
- XAML IntelliSense でのスニペット: IntelliSense が拡張され、XAML スニペットの表示がサポートされるようになりました。これは、組み込みのスニペットと、手動で追加したカスタム スニペットの両方で機能します。 このリリース以降、すぐに使用できる XAML スニペット (#region、列定義、行定義、セッター、タグ) も追加されています。
- デザイナーとは別のウィンドウでのポップアップ XAML エディター: XAML タブの横にある新しいポップアップ XAML ボタンを使用して、XAML デザイナーとその基になる XAML エディターを別々のウィンドウに簡単に分割できるようになりました。クリックすると、XAML デザイナーによって、アタッチされた XAML タブが最小化され、XAML エディター ビューだけの新しいウィンドウが開きます。 この新しいウィンドウは、Visual Studio の任意の表示またはタブ グループに移動できます。 元の XAML ビューを拡張することもできますが、同じファイルのすべての XAML ビューはリアルタイムで同期されたままであることに注意してください。

- 参照されているアセンブリのリソースの表示: XAML IntelliSense が更新され、WPF Framework および WPF .NET Core プロジェクトで、参照されているアセンブリの XAML リソースの表示がサポートされるようになりました (ソースが使用できない場合)。
XAML デバッグ ツール
- ライブ ビジュアル ツリーでの [自分の XAML のみ表示]: ライブ ビジュアル ツリーは、UWP と WPF の両方の開発者がデバッグ モードでアプリケーションを実行するときに使用できる機能であり、XAML ホット リロードに関連するライブ編集ツールの一部です。 以前の機能では、アタッチされた実行中のアプリケーションの完全なライブ ビジュアル ツリーが表示され、アプリ内で記述した XAML だけを表示するフィルターはありませんでした。 そのため、エクスペリエンスには関係のないものが多く含まれていました。お客様からのフィードバックに基づいて、アプリケーション内で記述したコントロールだけにツリーを制限する [自分の XAML のみ表示] という新しい既定値を追加しました。 これは新しい既定値ですが、ライブ ビジュアル ツリー自体内のボタンまたは新しい設定 ([オプション] > [デバッグ] > [全般] > [自分の XAML のみ表示]) を使用して、以前の動作に戻すこともできます
![ライブ ビジュアル ツリーでの [自分の XAML のみ表示]](media/16.4/dev16.4-lvt-justmyxaml.png)
リソースとテンプレート
- リソース ディクショナリのマージ: ソリューション エクスプローラーで利用できる新しい機能を使用して、UWP/WPF プロジェクト内の既存のリソース ディクショナリを、任意の有効な XAML ファイルと簡単にマージできるようになりました。 マージ ステートメントを追加する XAML ファイルを開き、マージするファイルを見つけて、ソリューション エクスプローラーでそのファイルを右クリックします。 コンテキスト メニューで、[Merge Resource Dictionary Into Active Window]\(リソース ディクショナリをアクティブ ウィンドウにマージする\) オプションを選択します。これにより、パスを含む適切なマージ XAML が追加されます。

- [テンプレートの編集] がサードパーティのコントロールで機能するようになった: ソース コードとしてソリューションに含まれていない場合でも、コントロール テンプレートのコピーを作成できるようになりました。 この変更により、[テンプレートの編集] 機能が使用できるようになり、ソースが現在利用可能なファースト パーティ要素の場合と同様に動作するようになります。 この機能は、サード パーティ製のコントロール ライブラリと、ソースが使用できないファースト パーティの両方に適用されることに注意してください。
XAML Islands:
- 強化された XAML Islands のサポート: Windows フォームと WPF .NET Core 3 アプリでの XAML Islands のシナリオのサポートが追加され、これらのアプリケーションに UWP XAML コントロールを簡単に追加できるようになりました。 これらの機能強化により、.NET Core 3 プロジェクトで、カスタム UWP XAML コントロールを含む UWP プロジェクトへの参照を行うことができます。 それらのカスタム コントロールは、Windows Community Toolkit v6 (Microsoft.Toolkit.Wpf.UI.XamlHost v6.0) で提供されている WindowsXamlHost コントロールで使用できます。 Windows アプリケーション パッケージ プロジェクトを使用して、.NET Core 3 の MSIX を Islands で生成することもできます。 作業を開始する方法については、ドキュメントを参照してください。
C++
- コード分析では、Clang と MSVC ツールセットのどちらを使用しているかにかかわらず、MSBuild と CMake の両方のプロジェクトで Clang-Tidy がネイティブにサポートされるようになりました。 clang-tidy チェックは、バックグラウンド コード分析の一部として実行し、エディター内警告 (波線) として示し、エラー一覧に表示できます。

- クロスプラットフォームの開発を開始するのに役立つ概要ページが Visual Studio CMake プロジェクトに追加されました。 これらのページを使用すると、Linux システムに接続し、ご利用の CMake プロジェクトに Linux または WSL 構成を追加するのが楽になります。

- CMake プロジェクト用の起動ドロップダウン メニューに、最近使用したターゲットが表示され、フィルター処理できるようになりました。
- C++/CLI では、Windows 用の .NET Core 3.1 以降との相互運用がサポートされるようになりました。
- メモリ エラーの検出に役立つ C++ コードのランタイム インスツルメンテーションのために、Windows 上の MSVC でコンパイルされたプロジェクトに対して ASan を有効にできるようになりました。
- MSVC の C++ 標準ライブラリに対する更新:
- C++ Build Insights という名前の新しいツールのコレクションを使用できるようになりました。 詳細については、「C++ チーム ブログ」を参照してください。
GitHub サポートに発行する
- Visual Studio 用の GitHub 拡張機能の一部であった GitHub への発行機能が、Visual Studio の GitHub Essentials に含まれるようになりました。
- チーム エクスプローラーの同期ページにある [GitHub に発行] ボタンを使用して、ローカル Git リポジトリを GitHub に発行できるようになりました。
Visual Studio の縦書きドキュメント タブ
ご利用のエディターの左側または右側にある縦に並んだ一覧でご自分のドキュメント タブを管理します。

ピン留め可能なプロパティ デバッグ ツール
ピン留め可能なプロパティ機能を使用して、DataTips または [ウォッチ]、[自動変数]、[ローカル] の各ウィンドウの上部にプロパティをピン留めすることで、デバッグ時にオブジェクトをすばやく特定して検査できるようになりました。

コンテナー ツール ウィンドウ
- コンテナーの一覧表示、検査、停止、開始、削除を行うことができます。
- 実行中のコンテナーのログとファイルの内容を表示したり、コンテナー内にターミナル ウィンドウを開いたりすることができます。
- イメージの表示、検査、削除を行うことができます

ツール ウィンドウを自動的に非表示にする
このプレビュー機能オプションを有効にすると、複数のツール ウィンドウを開いた状態で Visual Studio を起動することで生じる起動遅延をスキップできます。
.NET の生産性
- エラー リストを使用して、コード スタイル ルールの重要度レベルを直接構成できるようになりました。 エラー、警告、または提案にカーソルを置きます。 右クリックし、[重要度の設定] を選択します。 その後、そのルールに対して構成する重要度レベルを選びます。 これにより、既存の EditorConfig がルールの新しい重要度で更新されます。 これは、サードパーティのアナライザーでも機能します。

- [すべての参照の検索] を使用すると、種類とメンバーでグループ化できます。
![[すべての参照の検索] での種類とメンバーによるグループ化](media/16.4/groupbytypemember.png)
- ローカル関数を静的にし、関数の外部で定義された変数を関数の宣言と呼び出しに渡すことができるようになりました。 ローカル関数名にカーソルを置きます。 (Ctrl + .) キーを押して、[クイック アクションとリファクタリング] メニューをトリガーします。 [ローカル関数の作成]
static
を選択します。

- ローカルの静的関数に変数を明示的に渡すことができるようになりました。 ローカルの静的関数内の変数にカーソルを置きます。 (Ctrl + .) キーを押して、[クイック アクションとリファクタリング] メニューをトリガーします。 [ローカルの静的関数で変数を明示的に渡す] を選択します。

.NET の生産性
- エディターを使用して、コード スタイル ルールの重大度レベルを直接構成できるようになりました。 現在、ユーザーが .editorconfig ファイルを持っていない場合は、1 つ生成されます。 エラー、警告、または修正候補にカーソルを置き、(Ctrl + .) キーを押して [クイック アクションとリファクタリング] メニューを開きます。 [Configure or Suppress issues]\(問題の構成または抑制\) を選択します。 その後、ルールを選択し、そのルールに対して構成する重要度レベルを選びます。 これにより、既存の EditorConfig がルールの新しい重要度で更新されます。 これは、サードパーティのアナライザーでも機能します。

- [Go To Base]\(ベースに移動\) コマンドを使用して、継承チェーンを上に移動できるようになりました。 [Go To Base]\(ベースに移動\) コマンドは、継承階層内を移動する要素のコンテキスト (右クリック) メニューで使用できます。 (Alt + Home) キーを押すこともできます。 複数の結果がある場合は、移動先として選択できるすべての結果が表示されたツール ウィンドウが開きます。

- すべてのパラメーターに対して null チェックを追加できるようになりました。 これにより、Null 許容の、チェックのないパラメーターがすべて無効であることを確認する、if ステートメントが追加されます。 メソッド内の任意のパラメーターにカーソルを置きます。 (Ctrl + .) キーを押して、[クイック アクションとリファクタリング] メニューをトリガーします。 [すべてのパラメーターに対して null チェックを追加する] オプションを選択します。

- XML ドキュメントが含まれていないメソッドでは、オーバーライドするメソッドから XML ドキュメントを自動的に継承できるようになりました。 ドキュメント化されたインターフェイス メソッドを実装する、ドキュメント化されていないメソッドの上にカーソルを置きます。 その後、クイック ヒントにインターフェイス メソッドからの XML ドキュメントが表示されます。
<inheritdoc>
タグを使用して、基底クラスとインターフェイスから XML コメントを継承することもできます。 ドキュメントの例。

Xamarin
Xamarin.Forms 用の XAML ホット リロード
Xamarin.Forms 用の XAML ホット リロードを使用すると、開発時間が短縮され、ユーザー インターフェイスに関するビルド、実験、反復処理が容易になります。 UI を微調整するたびにアプリをビルドし直す必要がなくなります。実行中のアプリで変更がすぐに表示されます。
Android アプリ バンドルの発行
Visual Studio で Android アプリケーションを発行するときに、Android アプリ バンドルを作成できるようになりました。 Google Play ストアまたはさまざまな Android アプリ ストアからアプリをダウンロードするときに、ユーザーのデバイスの仕様に従って最適化された APK が、アプリ バンドルによってユーザーに提供されます。

AndroidX 移行ウィザード
AndroidX 移行ウィザードを使用して、Android サポート ライブラリから既存の Android アプリケーションを AndroidX に変換できるようになりました。

Android レイアウトの lint
Android デザイナー内でレイアウトを編集するときに、一般的な問題のセットが提供されるようになりました。

Visual Studio 2019 バージョン 16.4 で修正された主要なイシュー
- Visual Studio 2019 16.3.0 での不適切なコード生成
- アドレス XXX とユーザー XXX を使用して Mac サーバーに接続できない。ビルド プロセスを接続なしで続行できない。
- MSVC 14.23.28019 コンパイルのバグ
- System.MethodAccessException: メソッドによる試行
- [定義へ移動] で、CRTP シナリオの間違った定義に移動する
- VS2019 ComboBox的闪退问题-VS2019 コンボボックスが終了する問題
- Visual Studio のフィードバックにサインインすると "AadConfiguration.lock でファイル ロックを取得できませんでした" により失敗する
- cmake プロジェクト ファイルを読み込めない
- ftp 発行ですべてのフォルダーがアップロードされない
- VS システム ログの必須コレクション
- コマンド ラインから Visual Studio 2019 を起動して CMake プロジェクトを読み込むことができない。
- 存在しないスクリーンショットをトリミングしようとすると、VS フィードバック ツールがクラッシュする
- プロキシの背後でフィードバックの検索と送信が機能しない
- 定義に移動してシンボルの結果を検索すると正しいシンボルが表示されない
- 参照数をクリックすると Visual Studio 2019 が必ずクラッシュする
- 選択したコード ジェネレーターの実行中に "シーケンスに一致する要素が含まれていません" というエラーが発生する
- クラスダイアグラムの印刷
- SSDT での ADD SENSITIVITY CLASSIFICATION ステートメントのサポート
- フィードバック ツールに黒のハイ コントラスト テーマが適用されない
- テスト エクスプローラー ウィンドウを開くことができない
- リポジトリの更新後に単体テストの状態を保持する
- Mono 6.4 で導入された明示的なインターフェイスのバグ
- "Linux 開発用にプロジェクトを設定する" ときの Debug/Arm の設計ビルド エラー。
- VS の VSTO アドインで、新しい WPF クラスを作成できません
- Visual Studio の最新の更新プログラムで Android の NTLM 認証が壊れました (新しいバージョンの Momo が原因のようです)
- ソース ファイルを何も変更していないのに、"コンパイルできない編集が行われました" と表示されます。
- "ビルド開始時に出力ウィンドウを表示" が正しく動作しません
- プロジェクト ファイルで runsettings を設定する機能
- "NullReferenceException 型の例外" の後、C++ で蛍光ペンが部分的に動作を停止します
- セミコロン キーを押すと、実際の入力の代わりに、IntelliSense が終了します。
- ANSI .rc ファイルの UTF8 への自動変換 !!! (不要 !!!)
- [デバッグの停止時に自動的にコンソールを閉じる] オプションが有効になっているときに、Azure Functions プロジェクトがブレークポイントにヒットしません
- Razor Pages プロジェクトから区分を追加すると、"この項目でサポートされているスキャフォールディング機能はありません" がスローされます。
- vs2017rc のエディット コンティニュが動作しません
- WPF 以外の自動非表示ツール ウィンドウで、初期化エラーがスローされる場合があります
- デバッガーによってスローされる Null 参照例外
- プリコンパイル済みヘッダーを使用したプロジェクトでの clang-tidy の使用に関する問題
- iOS アーカイブを作成できません - XMA サーバーでプロセスを実行できません (パスまたはファイル名が長すぎます)
- git の変更履歴を使用すると、Visual Studio が凍結する
- テスト メニューに "コード カバレッジの分析" が見つからない
- VS2019 用 C++ Intellisense で誤ったエラーが報告される。VS2017 用の Intellisense ではこのようなことはなかった
- 明示的な演算子 bool が比較演算子によって暗黙的に呼び出されることがある
- CodeLens が機能していない
- ICE が非常に脆弱である
- 致命的なエラー C1001: DEBUG ビルドで MFC マクロ ON_COMMAND_RANGE () に constexpr テンプレート関数を使用した場合
- ソリューション エクスプローラーが閉じられているときに [アクティブ ドキュメントとの同期] によってすべてのファイルが選択される
- 構造化バインディングの Alignas (C++ 17) が動作していない
- VS2019 C++ が SFINAE (回帰) の特殊化に失敗した
- プロパティにアクセサーが '設定' されていないという誤った警告が C++ CLI Intellisense によって表示される
- Xamarin fastlane: "開発者情報の同期中にエラーが発生しました: 'iTunes Connect への要求の上限に達しました。'"
- Intellisense のヒントが切り詰められる
- IntelliSense のメンバー リストの候補に C++ のコントロールのキーワードが表示されない
- XAML UI デバッグ ツール - [選択を有効にする] ボタンが正しく動作しない
- 多くのパラメーターを持つ関数を呼び出すと、ポップアップに関数パラメーター リストが完全に表示されない。
- アンパサンド演算子を使用したコードの書式設定が正しくない v2
- reason を含む nodiscard のサポートが正しく検出されない
- Intellisense に CMake プロジェクトの WSL 構成用の vcpkg インクルード ディレクトリが表示されない
- エラー LNK2005: "__cdecl Windows::Foundation::operator co_await(struct Windows::Foundation::IAsyncAction ^)" (?? __LFoundation@Windows@@YA@PE$AAUIAsyncAction@01@@Z) already defined in pch.obj
- VS2019 #pragme message 显示异常-VS2019 #pragme メッセージに例外が表示される
- 識別子タグ
- LiveShare セッションの参加時に VCManagedPackage パッケージが正しく読み込まれない
- VS2019 16.2.1 #pragme メッセージに例外が表示される
- VS2019 Win10 1703 Modeling SDK DiagramClientView を再度読み込むと空白になる
- C++/CLR と .Net Core により Visual Studio がクラッシュする
- C++: 構造体コピー操作のコード生成が正しくない
- 診断ツールのリソース制限の無効化が永続的でない
- テスト エクスプローラー/CMake でテストの実行前にテストが検索される
- VS2019 プレビュー xaml スニペットの行と列が IntelliSense で正しく動作しない
- Windows 7 64 ビットが存在しない場合、VS2019 16.3 は AVX512 を誤って検出する
既知の問題
Visual Studio 2019 バージョン 16.4 のすべての問題と利用可能な回避策については、以下のリンクを参照してください。
フィードバックと提案
皆様のご意見をお待ちしております。 問題がある場合は、インストーラーまたは Visual Studio IDE 自体の右上隅にある [問題の報告] オプションからお知らせください。 右上隅に アイコンがあります。
製品に関する提案をしたり、 Visual Studio 開発者コミュニティで問題を追跡したりすることにより、質問、回答の検索、新機能を提案したりすることができます。
ライブ チャット サポートを介して、無料のインストールのヘルプを取得することもできます。
ブログ
開発者ツールのブログで提供されている洞察や推奨事項を活用すると、すべての新しいリリースに関する最新情報を入手し続けることができ、さまざまな機能について掘り下げた記事を参照することもできます。
Visual Studio 2019 リリース ノート履歴
過去のバージョンの Visual Studio 2019 に関連する詳細については、「Visual Studio 2019 リリース ノート履歴」のページを参照してください。