2022LogoVisual Studio 2022 バージョン 17.4 リリース ノート


ヒント

Visual Studio 2022 のローンチ イベントの録画を視聴して、新機能について学習し、ヒントやテクニックを確認して、無料のデジタル Swag をダウンロードしてください。

Developer Community | Visual Studio 2022 ロードマップ | システム要件 | 互換性 | 再頒布可能コード | リリース履歴 | ライセンス条項 | ブログ | 最新リリースの既知の問題 | Visual Studio のドキュメントの最新情報


ボタンをクリックして、Visual Studio 2022 の最新バージョンをダウンロードします。 Visual Studio 2022 のインストールと更新の手順については、Visual Studio 2022 の最新リリースへの更新に関する記事をご覧ください。 また、オフラインでインストールする方法の手順もご覧ください。

Community のダウンロード ボタンProfessional のダウンロード ボタンEnterprise のダウンロード ボタン

他の Visual Studio 2022 製品をダウンロードするには、Visual Studio のサイトを参照してください。


サポート期間

17.4 LTSC チャネルで更新プログラムを受信するように構成されている Visual Studio 2022 バージョン 17.4 の Enterprise ユーザーと Professional ユーザーはサポートされ、2024 年 7 月までセキュリティの脆弱性に対する修正プログラムを受け取る予定です。 Visual Studio でサポートされるベースラインの詳細については、Visual Studio 2022 のサポート ポリシーに関するページを参照してください。

以下のいずれかのボタンをクリックして、17.4 LTSC チャネルから Visual Studio 2022 バージョン 17.4 の最も安全なリリースをダウンロードしてください。 その他の 17.4 LTSC 製品は、Visual Studio サブスクリプションのサイトで確認できます。

[Enterprise LTSC のダウンロード] ボタン[Professional LTSC のダウンロード] ボタン

Visual Studio Community エディションは、Visual Studio の最新のマイナー バージョンの最新のサービス リリースを備えた最新チャネルでのみサポートされています。

Visual Studio のサイトに移動して、Visual Studio 2022 製品の最新バージョンのリンクにアクセスしてください。 Visual Studio 2022 のインストールと更新の手順については、Visual Studio 2022 の最新リリースへの更新に関するページを参照してください。 Visual Studio 管理者ガイドには、組織全体に Visual Studio を展開する方法についてのガイダンスが含まれています。

Visual Studio 2022 ブログ

Visual Studio 2022 ブログは、Visual Studio エンジニアリング チームから製品に関する分析情報を提供する公式の情報源です。 Visual Studio 2022 リリースの詳細については、次の投稿を参照してください。

このリリースでお客様から報告された主なバグに多数対応し、Developer Community でのお客様の提案に基づいて新機能を追加しました。 継続してフィードバックをお送りいただきありがとうございます。 このプレビューの一部としてリリースするお客様の提案の一覧を次に示します。


Visual Studio 2022 バージョン 17.4 リリース


17.4.18 Visual Studio 2022 バージョン 17.4.18

2024 年 4 月 9 日リリース

この 17.4.18 リリースで対処された問題

  • このバグ修正プログラムにより、クライアントはレイアウトでブートストラップを使用し、--noWeb パラメータを渡してクライアント コンピューターにインストールし、インストーラと Visual Studio 製品の両方がレイアウトからのみダウンロードされるようにすることができます。 以前は、インストール プロセス中にインストーラが -noWeb パラメータを尊重せず、Web から自己更新を試行することがありました。

対処済みのセキュリティ アドバイザリ

  • CVE-2024-21409 WPF には use-after-free の脆弱性が存在し、信頼されていないドキュメントを表示するときに特権の昇格が発生する可能性があります。
  • CVE-2024-28929 この更新プログラムは、Microsoft ODBC Driver for Microsoft SQL Server のリモート コード実行の脆弱性に対処します。
  • CVE-2024-28930 この更新プログラムは、Microsoft ODBC Driver for Microsoft SQL Server のリモート コード実行の脆弱性に対処します。
  • CVE-2024-28931 この更新プログラムは、Microsoft ODBC Driver for Microsoft SQL Server のリモート コード実行の脆弱性に対処します。
  • CVE-2024-28932 この更新プログラムは、Microsoft ODBC Driver for Microsoft SQL Server のリモート コード実行の脆弱性に対処します。
  • CVE-2024-28933 この更新プログラムは、Microsoft ODBC Driver for Microsoft SQL Server のリモート コード実行の脆弱性に対処します。
  • CVE-2024-28934 この更新プログラムは、Microsoft ODBC Driver for Microsoft SQL Server のリモート コード実行の脆弱性に対処します。
  • CVE-2024-28935 この更新プログラムは、Microsoft ODBC Driver for Microsoft SQL Server のリモート コード実行の脆弱性に対処します。
  • CVE-2024-28936 この更新プログラムは、Microsoft ODBC Driver for Microsoft SQL Server のリモート コード実行の脆弱性に対処します。
  • CVE-2024-28937 この更新プログラムは、Microsoft ODBC Driver for Microsoft SQL Server のリモート コード実行の脆弱性に対処します。
  • CVE-2024-28938 この更新プログラムは、Microsoft ODBC Driver for Microsoft SQL Server のリモート コード実行の脆弱性に対処します。
  • CVE-2024-28941 この更新プログラムは、Microsoft ODBC Driver for Microsoft SQL Server のリモート コード実行の脆弱性に対処します。
  • CVE-2024-28943 この更新プログラムは、Microsoft ODBC Driver for Microsoft SQL Server のリモート コード実行の脆弱性に対処します。
  • CVE-2024-29043 この更新プログラムは、Microsoft ODBC Driver for Microsoft SQL Server のリモート コード実行の脆弱性に対処します。

17.4.17 Visual Studio 2022 バージョン 17.4.17

リリース日: 2024 年 3 月 12 日

この 17.4.17 リリースで対処された問題

セキュリティ アドバイザリに対処

  • CVE-2024-21392 特別に作成された要求がリソース リークを引き起こし、サービス拒否につながる可能性がある脆弱性が .NET に存在します。
  • CVE-2024-26190 接続が有効なままである限り、ピアがメモリの小さなチャンクを割り当てる可能性がある脆弱性が MsQuic.dll に存在します。
  • CVE-2023-27911 このアドバイザリは、Visual Studio 2022 で Autodesk® FBX® SDK がサポートされなくなったことを示すために再発行されています。

17.4.16 Visual Studio 2022 バージョン 17.4.16

リリース日: 2024 年 2 月 13 日

この 17.4.16 リリースで対処された問題

対処済みのセキュリティ アドバイザリ

  • CVE-2024-0057 Microsoft .NET Framework ベースのアプリケーションで X.509 チェーン構築 API を使用しているが、ロジックの欠陥のために X.509 証明書を完全に検証しない場合、セキュリティ機能バイパスの脆弱性が存在します。
  • CVE-2024-21386 SignalR を使用する ASP.NET アプリケーションに、悪意のあるクライアントがサービス拒否を引き起こすおそれがある脆弱性が存在します。
  • CVE-2024-21404 X509 証明書を解析するときに、OpenSSL がサポートされている .NET にサービス拒否の脆弱性が存在します。

17.4.15 Visual Studio 2022 バージョン 17.4.15

"リリース日: 2024 年 1 月 9 日"

この 17.4.15 リリースで対処された問題

  • OpenSSL v3.1.4 に付属の MinGit を v2.43.0.1 に更新しました。特定の状況でネットワーク操作が非常に遅くなっていた回帰に対処しています。

対処済みのセキュリティ アドバイザリ

  • CVE-2024-20656 VSStandardCollectorService150 サービスに脆弱性が存在し、ローカルの攻撃者は、影響を受ける Microsoft Visual Studio のインストールが実行されているホストに対する特権をエスカレートできます。
  • CVE-2023-32027 このアドバイザリは、Visual Studio の Microsoft ODBC Driver for SQL Server リモート コード実行の脆弱性に対処するために再発行されます。
  • CVE-2023-32025 このアドバイザリは、Visual Studio の Microsoft ODBC Driver for SQL Server リモート コード実行の脆弱性に対処するために再発行されます。
  • CVE-2023-32026 このアドバイザリは、Visual Studio の Microsoft ODBC Driver for SQL Server リモート コード実行の脆弱性に対処するために再発行されます。
  • CVE-2023-29356 このアドバイザリは、Visual Studio の Microsoft ODBC Driver for SQL Server リモート コード実行の脆弱性に対処するために再発行されます。
  • CVE-2023-32028 このアドバイザリは、Visual Studio の Microsoft SQL OLE DB リモート コード実行の脆弱性に対処するために再発行されます。
  • CVE-2023-29349 このアドバイザリは、Visual Studio の Microsoft ODBC および OLE DB のリモート コード実行の脆弱性に対処するために再発行されます。
  • CVE-2024-0057 Microsoft .NET Framework ベースのアプリケーションで X.509 チェーン構築 API を使用しているが、ロジックの欠陥のために X.509 証明書を完全に検証しない場合、セキュリティ機能バイパスの脆弱性が存在します。
  • CVE-2024-0056 Microsoft.Data.SqlClient および System.Data.SqlClient SQL データ プロバイダーに脆弱性が存在し、攻撃者は SQL クライアントと SQL サーバーの間で傍受攻撃 (MITM、つまり、中間者攻撃とも呼ばれる) を実行できます。
  • CVE-2024-21319 Microsoft は、ASP.NET Core プロジェクト テンプレートの脆弱性に関する情報を提供するために、このセキュリティ アドバイザリをリリースします。

17.4.14 Visual Studio 2022 バージョン 17.4.14

リリース日: 2023 年 11 月 14 日

17.4.14 のこのリリースで対処された問題

Developer Community から:

対処済みのセキュリティ アドバイザリ

  • CVE-2023-36038ASP.NET IIS には、リモートの認証されていないユーザーが特別に細工された要求を .NET アプリケーションに発行し、サービス拒否を引き起こす可能性がある脆弱性が存在します。
  • CVE-2023-36049System.Net.WebRequest.Create に提供される信頼されていない URI を使用してバックエンド FTP サーバーに任意のコマンドを挿入できる特権の昇格の脆弱性が .NET に存在します。
  • CVE-2023-36558認証されていないユーザーが blazor サーバー フォームの検証をバイパスして意図しないアクションをトリガーされる可能性がある ASP.NET にセキュリティ機能バイパスの脆弱性が存在します。
  • CVE-2023-36042Visual Studio にサービス拒否の脆弱性が存在し、修飾名が正しくないと無限ループが発生する可能性があります。

17.4.13 Visual Studio 2022 バージョン 17.4.13

2023 年 10 月 24 日リリース

この 17.4.13 のリリースで対処された問題

セキュリティ アドバイザリの再発行

  • CVE-2023-36799悪意を持って作成された X.509 証明書を読み取った場合、サービス拒否が発生する可能性があるという脆弱性が .NET に存在します。 この問題は Linux システムにのみ影響します。
  • CVE-2023-36796このセキュリティ更新プログラムは、破損した PDB ファイルを読み取るときに、リモート コード実行を引き起こす可能性がある DiaSymReader.dll の脆弱性を解決します。
  • CVE-2023-36794このセキュリティ更新プログラムは、破損した PDB ファイルを読み取るときに、リモート コード実行を引き起こす可能性がある DiaSymReader.dll の脆弱性を解決します。
  • CVE-2023-36793このセキュリティ更新プログラムは、破損した PDB ファイルを読み取るときに、リモート コード実行を引き起こす可能性がある DiaSymReader.dll の脆弱性を解決します。
  • CVE-2023-36792このセキュリティ更新プログラムは、破損した PDB ファイルを読み取るときにリモート コード実行を引き起こす可能性がある DiaSymReader.dll の脆弱性を解決します。

17.4.12 Visual Studio 2022 バージョン 17.4.12

2023 年 10 月 10 日にリリース

この 17.4.12 のリリースで対処された問題

  • MSVC v143 C++ ビルド ツール オプション v14.32-17.2 と v14.34-17.4 では、アプリのローカル再頒布可能バイナリの正しいバージョンがインストールされるようになりました。

対処済みのセキュリティ アドバイザリ

  • CVE-2023-36435MsQuic.dll にはメモリ リークの脆弱性が存在し、サービス拒否につながる可能性があります。 この問題は Windows システムにのみ影響します。
  • CVE-2023-38171MsQuic.dll には Null ポインターの脆弱性が存在し、サービス拒否につながる可能性があります。 この問題は Windows システムにのみ影響します。
  • CVE-2023-44487ASP.NET Core Kestrel Web サーバーには脆弱性が存在し、悪意のあるクライアントにより特別に作成された HTTP/2 要求がサーバーに大量に発生し、サービス拒否を引き起こす可能性があります。

17.4.11 Visual Studio 2022 バージョン 17.4.11

リリース日: 2023 年 9 月 12 日

17.4.11 のこのリリースで対処された問題

  • Visual Studio で使用される Git のバージョンを v 2.41.0.3 に更新しました。
  • '/noadmin' フラグを使用して vcperf セッションが開始されたときに CL が失敗しないように、MSVC ツールセットが修正されました。 これにより、特権の昇格を必要とせずに、Build Insights がデータを収集 (およびビルド時間を最適化) できるようになります。

Developer Community から:

対処済みのセキュリティ アドバイザリ

  • CVE-2023-36799悪意を持って作成された X.509 証明書を読み取った場合、サービス拒否が発生する可能性があるという脆弱性が .NET に存在します。 この問題は Linux システムにのみ影響します。
  • CVE-2023-36796このセキュリティ更新プログラムは、破損した PDB ファイルを読み取るときに、リモート コード実行を引き起こす可能性がある DiaSymReader.dll の脆弱性を解決します。
  • CVE-2023-36794このセキュリティ更新プログラムは、破損した PDB ファイルを読み取るときに、リモート コード実行を引き起こす可能性がある DiaSymReader.dll の脆弱性を解決します。
  • CVE-2023-36793このセキュリティ更新プログラムは、破損した PDB ファイルを読み取るときに、リモート コード実行を引き起こす可能性がある DiaSymReader.dll の脆弱性を解決します。
  • CVE-2023-36792このセキュリティ更新プログラムは、破損した PDB ファイルを読み取るときにリモート コード実行を引き起こす可能性がある DiaSymReader.dll の脆弱性を解決します。
  • CVE-2023-36759このセキュリティ更新プログラムは、悪意のあるファイルを読み取って特権の昇格を引き起こす可能性がある pgodriver.sys を削除します。

17.4.10 Visual Studio 2022 バージョン 17.4.10

リリース日: 2023 年 8 月 8 日

17.4.10 のこのリリースで対処された問題

  • VSWhere のすべてのスイッチが起動不可能な状態のインスタンスを返さないという問題に対処しました。

対処済みのセキュリティ アドバイザリ

  • CVE-2023-35390アクセス許可が弱いディレクトリで一部の dotnet コマンドを使用すると、リモートでコードが実行される可能性がある脆弱性が存在します。
  • CVE-2023-38180Kestrel に脆弱性が存在します。この脆弱性により、悪意のある可能性のあるクライアントを検出すると、Kestrel が接続を切断できず、サービス拒否が発生することがあります。
  • CVE-2023-38178.NET Kestrel に脆弱性が存在します。この脆弱性により、悪意のあるクライアントは、ASP.NET ランタイムと .NET ランタイムの両方で HTTP/3 の QUIC ストリーム制限をバイパスし、サービス拒否が発生する可能性があります。
  • CVE-2023-35391Redis バックプレーンの使用時に SignalR を使用する ASP.NET Core 2.1、.NET 7.0、および .NET 6.0 アプリケーションに脆弱性が存在すると、情報漏えいが発生する可能性があります。
  • CVE-2023-36897 Visual Studio 2010 Tools for Office ランタイム スプーフィングの脆弱性 このセキュリティ更新プログラムは、認証されていないリモート攻撃者が有効なコード署名証明書なしで VSTO アドイン展開に署名できる脆弱性に対処します。

17.4.9 Visual Studio 2022 バージョン 17.4.9

リリース日: 2023 年 7 月 11 日

17.4.9 のこのリリースで対処された問題

対処済みのセキュリティ アドバイザリ


17.4.8 Visual Studio 2022 バージョン 17.4.8

リリース日: 2023 年 6 月 13 日

この 17.4.8 リリースで対処された問題

  • ストアで使用される隣接するフローティングの上位 32 ビットが破棄される場合があるバグを修正しました
  • ASAN 初期化で、起動時にクラッシュを引き起こす競合状態を修正しました
  • GlobalLock/Unlock と LocalLock/Unlock で、ASAN の初期化の前にメモリが割り当てられた一部のケースで、エラー報告に誤検知がある問題を修正しました
  • HEAP_REALLOC_IN_PLACE_ONLY とマークされているヒープを含む RtlReAllocateHeap に関する ASAN の問題を修正しました

対処済みのセキュリティ アドバイザリ



17.4.7 Visual Studio 2022 バージョン 17.4.7

リリース日: 2023 年 4 月 11 日

17.4.7 のこのリリースで対処された問題

  • Rtl* メモリ関数を使用してそのメモリを操作した場合、マップされたメモリ ファイルが MSVC ASAN によって無視される
  • カーネル モード ドライバーの PGO トレーニング中に使用されたドライバーに無効な入力が送信されたときのクラッシュを修正
  • ISO C++17 および ISO C++20 を使用した MSVC テンプレート演算子の解決を修正

対処済みのセキュリティ アドバイザリ


17.4.6 Visual Studio 2022 バージョン 17.4.6

リリース日: 2023 年 3 月 14 日

17.4.6 のこのリリースで対処された問題

  • 同じヒープに同時に大量のスレッドがアクセスすることによって ASAN のパフォーマンスが低下することを修正しました。 また、windows_hook_legacy_allocators オプションの既定値を true に変更しました。
  • 既定の引数の初期化を削除しないと、戻り変数の最適化によってコピー/移動コンストラクターが省略されるバグを修正しました。
  • 静的分析の誤検知の C6031 警告を修正しました。
  • Git 2.39 では、credential.helper の値の名前が "manager-core" から "manager" に変更されました。 詳細については、「 https://aka.ms/gcm/rename 」を参照してください。
  • CVE-2023-22490 に対処する、mingit と Git for Windows パッケージの v2.39.2 への更新

対処済みのセキュリティ アドバイザリ

Developer Community から


17.4.5 Visual Studio 2022 バージョン 17.4.5

リリース日: 2023 年 2 月 14 日

17.4.5 のこのリリースで対処された問題

  • 以前のバージョンの Visual Studio 2022 によって生成されたオブジェクトと Visual Studio 2022 バージョン 17.4 以降で生成されたオブジェクトをリンクするときに、std::string のコピーが null で終わらない場合がある STL の回帰を修正しました。
  • invalid_operation 例外が noexcept 関数に達するためにクラッシュする可能性がある、VS 2015 でビルドされたプログラムの std::async() のバイナリ互換性の中断を修正しました。
  • 符号なし整数要素の範囲で負の符号付き整数値を検索するときに std::find または std::count が失敗する原因となった STL の回帰を修正しました。
  • デバッグ中に、返された変数が Visual Studio の [ウォッチ] または [ローカル] ウィンドウに表示されない場合があるバグを修正しました。
  • コンパイラ組み込み関数 '__builtin_offsetof' の入れ子になった呼び出しを含む 1 つのコード ブロック内の複数のステートメントによって、C++ コンパイラがクラッシュする可能性があります。 クラッシュを回避するには、__builtin_offsetof 組み込み呼び出しの入れ子を解除します。
  • Windows フォーム コンストラクターをデバッグするときは、ローカル変数が [ローカル] と [ウォッチ] ウィンドウで表示および評価されます。
  • @bind:get、@bind:set、および @bind:after 属性修飾子が認識されず、デザイン時エラーが発生する問題を修正しました。
  • 間違った自動閉じかっこの配置後の ChangeSignatureCodeRefactoringProvider 例外で呼び出された変更シグネチャ リファクタリングのバグを修正しました · Issue #65298 ·dotnet/roslyn (github.com)。
  • ワークロードがインストールされておらず、コンピューターに C++ 再頒布可能パッケージがインストールされていない場合に、ターミナルがクラッシュする問題を修正しました。
  • XAML ファイルを開くときに VS がフリーズする可能性がある問題を解決します。
  • CPython インタープリターをバージョン 3.9.13 に更新しました。
  • Xcode 14.2 のサポートが追加されました。
  • .NET MAUI を 7.0.59 (SR3) に更新しました。リリース ノートについては、https://aka.ms/dotnet-maui-releases をご覧ください。
  • mingit と Git for Windows パッケージの v2.39.1.1 への更新。これは CVE-2022-41903 に対処しています

対処済みのセキュリティ アドバイザリ

17.4.4 Visual Studio 2022 バージョン 17.4.4

リリース日: 2023 年 1 月 10 日

17.4.4 のこのリリースで対処された問題

  • C# ソース ファイルのドキュメント アウトライン機能が無効になりました
  • Visual Studio の更新プロセス中に Cascadia Code と Cascadia Mono フォントがアンインストールされる際の問題に対処しました。

Developer Community から

対処済みのセキュリティ アドバイザリ

  • CVE-2023-21538 .NET サービス拒否の脆弱性 .NET 6.0 にはサービス拒否の脆弱性が存在します。この脆弱性により、悪意のあるクライアントによってスタック オーバーフローが発生し、公開されたエンドポイントに攻撃者が無効な要求を送信すると、サービス拒否攻撃が発生する可能性があります。

17.4.3 Visual Studio 2022 バージョン 17.4.3

リリース日: 2022 年 12 月 13 日

17.4.3 のこのリリースで対処された問題

  • 同じコンパイラ呼び出しで複数の C++ 翻訳単位が分析されたときにメモリ リークが発生するアロケーターのバグを修正しました。
  • thread_local 変数が原因で、リンカーで "致命的なエラー LNK1161: エクスポートの仕様が無効です" エラーが発生するバグを修正しました。
  • 同じコンパイラ呼び出しで複数の C++ 翻訳単位が分析されたときにメモリ リークが発生するアロケーターのバグを修正しました。
  • C# または VisualBasic コードの編集中に、"診断アナライザー ランナーがクラッシュしました" というメッセージと共に黄色のバーが表示される基になる例外を修正しました
  • レコーディングがアタッチされている場合に、Developer Community にフィードバック チケットを送信するパフォーマンスが向上しました。
  • Xamarin.iOS および Xamarin.Mac 用の Xcode 14.1 のサポートを追加しました。
  • iOS、tvOS、macOS、Mac Catalyst 用の .NET の Xcode 14.1 サポートを追加しました。
  • .NET MAUI を 7.0.52 (SR1.1) に更新しました。リリース ノートについては、https://aka.ms/dotnet-maui-releases を参照してください。
  • Visual Studio が実行されているマシンにまだペアリングされていないデバイスに UWP アプリをデプロイできない問題を修正しました。
  • VS arm64 の wasm-tools エクスペリエンスは、VS 17.4.3 で有効になります (.NET WebAssembly ビルド ツールおよび.NET 6.0 WebAssembly ビルド ツール用)。 これにより、AOT コンパイルによる Blazor wasm の発行が可能になります

Developer Community から

対処済みのセキュリティ アドバイザリ

  • CVE-2022-41089 リモート コード実行 .NET Core 3.1、.NET 6.0、.NET 7.0 にリモート コード実行の脆弱性が存在します。悪意を持って作成された xps ファイルを解析した結果、悪意のあるアクターがユーザーに任意のコードを実行させるおそれがあります。

17.4.2 Visual Studio 2022 バージョン 17.4.2

"リリース日: 2022 年 11 月 29 日"

17.4.2 のこのリリースで対処された問題

  • C++ コンパイラが /analyze でクラッシュする問題を修正しました。
  • ゼロ拡張が誤って無視されるコンパイラのバグを修正しました
  • Visual Studio セッション間で一部の C++ 書式設定オプションが正しく永続化されない問題を修正しました。
  • 貼り付けのハングに関する問題を修正しました
  • このバージョンの Visual Studio には Win App SDK 1.2.221109.1 が含まれています。詳細については、Windows App SDK リリース チャネル - Windows アプリ | Microsoft Docs を参照してください。

Developer Community から


17.4.1 Visual Studio 2022 バージョン 17.4.1

リリース日: 2022 年 11 月 15 日

17.4.1 のこのリリースで対処された問題

  • vs インストーラーで「arm64ec」または「ec」と検索すると、arm64ec サポートを含む関連する arm64 コンポーネントが表示されるようになりました。
  • Visual Studio 2022 バージョン 17.3 以降で、GPU を使用して画像分類モデルをトレーニングするときに ML.NET Model Builder がハングしていました。 このデッドロックは解決され、画像分類は CPU または GPU を使用して正常にトレーニングを行うことができます。
  • 統合ターミナルでスクリーン リーダーを使用すると、実行されたコマンドとその出力に関する情報が正しく提供されるようになりました。
  • .NET 7 Linux コア ダンプを開くときに Visual Studio がクラッシュすることはありません。

Developer Community から


Visual Studio 2022 バージョン 17.4 のこのリリースでの新機能の概要

Arm64
このプレビューでは、Windows 11 における Arm64 のネイティブ サポートを継続的に構築しています。 .NET デスクトップ開発 (WinForms と WPF)、C++ によるデスクトップ開発 (MSBuild ベースのプロジェクト用)、ASP.NET と Web の開発のサポートに加えて、ユニバーサル Windows プラットフォーム開発ワークロードを有効にしました。 詳細については、ブログの投稿をお読みください。

C++

  • コンパイラ エラー メッセージが向上し、特に概念に関して、より正確で有用な情報が提供されます。
  • SARIF ビルド ログを指定したディレクトリに出力する実験的な MSVC フラグ /experimental:log<directory> を追加しました。
  • IntelliSense に C23 属性のサポートを追加し、C++ 20 モジュールのサポートを継続的に進めました。
  • 新しいソリューションを開くときのインデックス作成のパフォーマンスが向上しました。 17.3 以降、大規模なプロジェクトでは 20 から 35% の向上が見られる可能性があります。
  • Named Return Value Optimisation (NRVO) に次のような機能強化を加えました。
    • 例外処理またはループを含む場合に NRVO を有効にする。
    • ユーザーが /Zc:nrvo フラグ、または /std:c++20 以降、または /permissive- を渡した場合、/Od でも NRVO を有効にする。
    • ユーザーが /Zc:nrvo- フラグを使って NRVO を無効にできるようにする。
  • Visual Studio に付属する LLVM のバージョンを 15.0.1 にアップグレードしました。 使用可能な内容については、LLVM および Clang のリリース ノートを参照してください。
  • CMake プロジェクトでの vcpkg 成果物のサポートが Visual Studio に追加されました。 vcpkg マニフェストを含むプロジェクトでは、プロジェクトを開くと自動的に環境がアクティブになります。 この詳細については、「Visual Studio での vcpkg 環境のアクティブ化」のブログ投稿を参照してください。
  • C++ プロジェクトで Dev Containers を使用できるようになりました。 この機能の詳細については、Dev Containers for C++ に関するブログ投稿を参照してください。
  • IntelliSense で、いずれかが PCH である場合に、preincluded ヘッダーの順序を尊重するようになりました。 以前は、/Yu を指定して PCH を使い、/FI を指定して強制的にインクルードした場合、IntelliSense では、/FI を指定してインクルードした他のヘッダーよりも前に、常にこれを最初に処理していました。 これはビルドの動作と一致しないため、今回の変更により、/FI ヘッダーは指定した順序で処理されるようになりました。
  • テスト エクスプローラーの CTest 名から内部プレフィックスを削除しました。
  • Visual Studio に付属する CMake のバージョンをバージョン 3.24.1 にアップグレードしました。 入手できる内容については、CMake のリリース ノートを参照してください。
  • Android SDK の更新プログラム
    • Ant スクリプトが削除されたので、[新しいプロジェクト] ダイアログには Ant ベースのテンプレートが表示されなくなりました。 Ant テンプレートから Gradle テンプレートへの移行については、「Migrating Builds From Apache Ant」(Apache Ant からのビルドの移行) (gradle.org) を参照してください。
    • NDK 23 および 24 を使ったビルドのサポートを追加しました
    • NDK コンポーネントを LTS バージョン 23 に更新しました
  • ranges::min_element()ranges::max_element()ranges::minmax_element() のベクトル化された実装を追加しました
  • Microsoft では C++ の標準化における最新の開発状況を継続的に追跡しており、次の C++ 23 機能のサポートはコンパイラ オプションに /std:c++latest を含めることで使用できます
    • P2302ranges::containsranges::contains_subrange
    • P2499string_view Range Constructor は explicit にする必要がある
    • P0849R8auto(x): 言語内の decay-copy
    • コンパイラ部分はまだ実装されていません。ライブラリ部分は Ranges の初期実装時に C++ 20 モードで実装されました。
    • P0881R7<stacktrace>
    • P2301R1std::stacktrace 用に pmr の別名を追加する
    • P1328R1constexpr type_info::operator==()
    • P2440R1ranges::iotaranges::shift_leftranges::shift_right
    • P2441R2views::join_with
  • [宣言/定義の作成] 機能のナビゲーション動作を選択できるように、オプション [Navigation after Create Declaration/Definition] (宣言/定義の作成後のナビゲーション) を追加しました。 クイック表示 (既定値)、ドキュメントを開く、またはナビゲーションなしのいずれかを選択できます。
  • Visual Studio の Arm64 ビルドは、Arm64 バージョンの CMake と Ninja をバンドルするようになりました。
  • CMake Presets バージョン 4 のサポートを追加しました。 入手できる内容の詳細については、CMake のリリース ノートを参照してください。
  • 接続マネージャーを使ったリモート システムへの接続で、SSH ProxyJump をサポートするようになりました。これは、別の SSH ホスト経由で SSH ホストにアクセスするために使われます (たとえば、ファイアウォールの内側のホストにアクセスする場合)。

Developer Community のハイライト

デバッグと診断

  • DataTable ビジュアライザーがアップグレードされ、フィルター処理、並べ替え、エクスポート、テーマ設定などの新しい機能強化が追加されました。
  • CSV/Excel 形式でデータ エクスポートを行うには、右上隅のドロップダウンを使います。
  • また、ビジュアライザーを使って、目的のフィルター文字列に基づいてデータをフィルター処理することもできます。 フィルター文字列に一致する値を含むすべての行が返されます。 また、フィルター処理された結果と並べ替えられた結果を CSV または Excel 形式でエクスポートすることもできます。
  • ビジュアライザー ウィンドウは、選んだ Visual Studio のテーマに従ってテーマが設定されます。

エディターの機能

  • Visual Studio でオーディオ キューを使用できるようになりました。 オーディオ キューを有効にするには、[ツール] > [オプション] に移動してから、[テキスト エディター] > [全般] に移動します。 [設定] セクションで、[オーディオ キューを有効にする] オプションをオンにして、オーディオ キューを有効にします。このオプションをオンにすると、エディターのキャレットがエラー、ブレークポイント、または警告のある行に移動すると、Visual Studio でオーディオ キューが再生されます。 また、差分ビューでのファイルの表示時に、追加または削除された行に移動したときもキューが再生されます。 これらのキューは、Windows の [設定] コントロール パネルで個別に有効化または変更できます。
  • エディターで Shift キーを押しながらマウス ホイールを回すと、エディターが水平方向にスクロールするようになりました。 エディターがスクロールする量は、[ツール] > [オプション] の [テキスト エディター] > [詳細設定] で構成できます。
  • エディターの現在行の番号が、視認しやすいように強調表示されます。
  • [出力] ペインに、各行の先頭にタイムスタンプを付加するボタンが追加されました。これにより、開発者は、実行時間の長いプロセスのステップ間でどれだけの時間が経過したかを簡単に確認できます。
  • プリンターの設定が正しく保存されないことがある問題を修正しました。
  • Visual Studio のエディターでテキストを選ぶと、一致する文字列が自動的に強調表示されるようになりました。 この機能を有効にするには、[ツール] > [オプション] に移動してから、[テキスト エディター] > [全般] に移動します。 [表示] セクションで、[選択項目の一致を表示] オプションをオンにします。 このオプションをオンにすると、100 文字以下のテキスト行を 1 つ選ぶたびに、一致した文字列がすぐに強調表示されます。

F#

ローカル関数の引数に関するヒント

Git ツール

Developer Community のハイライト

その他の機能

  • マルチリポジトリのサポートは、一度に最大 10 個の Git リポジトリをアクティブにできることを意味します。これにより、複数のリポジトリにまたがるソリューションを操作し、コミット、プル、プッシュなどの Git 操作を複数のリポジトリに対して同時に実行できます。 マルチリポジトリのサポートを使い始めるには、複数のリポジトリにまたがるプロジェクトを含むソリューションまたはフォルダーを開きます。 ブログ記事を読んで詳細を確認し、フィードバックをお送りください。
  • 追跡対象の Git ファイルを追跡解除して無視する
  • 最近行われた Git のセキュリティの更新に合わせて、リポジトリの状態を改善し、新しい信頼ダイアログを利用することで、単一および複数の Git リポジトリを信頼するユーザー エクスペリエンスを強化しました。

インストールと更新

ロールバック

Visual Studio では、以前にインストールしたバージョンに戻る機能がサポートされるようになりました。 詳細については、ロールバックに関するブログ投稿を参照してください。

サポート対象外のコンポーネントを削除する

Visual Studio 2022 バージョン 17.4 のインストーラーに含まれる新機能を使うと、Visual Studio によってインストールされたコンポーネントでサポート対象外の状態になったものをすべて簡単に一括削除できます。 これは、セキュリティで保護された準拠環境を維持するのに役立ちます。 開発者は更新または変更の際にこのアクションを開始でき、IT 管理者はポリシーによって適用できます。 レイアウトを使用する企業では、一度構成したレイアウトの設定を、その後の管理者による更新のときに適用することができます。 Visual Studio 2017 と 2019 のクライアント コンピューターが最新の Visual Studio インストーラーを使うように更新されている場合は、それらでもこの機能が動作します。 この機能のしくみについて詳しくは、「Visual Studio 管理者ガイド」またはブログ記事をご覧ください。

管理者テンプレート (ADMX) を使用してポリシーを構成する

Visual Studio 管理者テンプレート ファイル (ADMX/ADML) をリリースしました。これを使うと、IT 管理者は、ポリシーによって管理できる Visual Studio の動作を簡単に検出、管理、制御できます。 ADMX ファイルは、グループ ポリシー エディターや Microsoft Endpoint Manager などの一般的な管理および展開ツールとも簡単に統合できます。 追加情報については、こちらをご覧ください

Visual Studio のセキュリティ更新プログラムが、Windows Update for Business の Microsoft Update チャネルを通じて利用できるようになった

Windows Update for Business を使い、Microsoft Endpoint Manager (旧称 Intune) などのモバイル デバイス管理ソリューションによって管理されている、クラウドに接続された Azure Active Directory (Azure AD) 参加済みの最新のデバイスで、Visual Studio のすべてのサポートされるバージョンのすべての Visual Studio セキュリティ更新プログラムを入手できるようになりました。 クライアント デバイスでこの機能を有効にするには、AdministratorUpdatesEnabled ポリシーを 2 に設定します。 詳しくは、ブログ投稿と「Visual Studio 管理者ガイド」をご覧ください。

IntelliCode

IntelliCode に、1 行のコードの一部を変更または削除する提案がある場合、提案は C# ユーザーのエディター画面に "差分ビュー" として表示されるようになりました。 ユーザーは、Tab キーを使って予測を受け入れることができます。

Microsoft Teams 開発ツール (Teams Toolkit)

  • この新しいバージョンの Teams Toolkit では、Azure Active Directory テンプレート ファイル、projectSettings.json、アプリ マニフェスト ファイルを更新する必要があります。 これらの更新は、Teams Toolkit のメニュー コマンドを実行した後に自動的に実行されます。プロジェクトのソース コードは変更されません。 出力ウィンドウには更新の状態が表示されます。
  • Microsoft Teams App プロジェクト テンプレート ウィザードのタブ アプリケーションの種類には、シングル サインオンを構成するかどうかのオプションが含まれています。 [プロジェクト] > [Teams Toolkit] > [認証コードの追加] を使って後で追加してください。 Teams Toolkit の詳細については、ドキュメント (https://aka.ms/teams-toolkit-vs-docs) を参照してください

.NET の生産性

  • 型の名前を変更できる、新しいインラインの名前変更 UI があります。 新しいインラインの名前変更を表示するには、Ctrl+RR キーを押します。 型の下に新しい UI と、コメント、文字列、シンボル ファイルの名前を変更するオプションが表示されることがわかります。

インラインの名前変更

  • Source Link と埋め込みソースを無効にするオプションを追加しました。 この機能を無効にするには、[ツール] > [オプション] > [テキスト エディター] > [C#] > [詳細設定] を選び、[Enable navigation to Source Link and Embedded source] (Source Link と埋め込みソースへのナビゲーションを有効にする) をオフにします。

Source Link と埋め込みソースを無効にする

DataTable ビジュアライザー

  • [ドキュメント アウトライン] ウィンドウで、ファイルの構造を一目で簡単に確認できるようになりました。 [ドキュメント アウトライン] ウィンドウでは、プロジェクト ファイルの簡単な移動と編集に役立つファイルのシンボル ツリーがエディターに表示されます。 [ドキュメント アウトライン] を開くには、[表示]>[その他のウィンドウ]>[ドキュメント アウトライン] に移動する、Ctrl+Alt+T ショートカット キーを使います。

ドキュメント アウトライン

テスト ツール

  • Live Unit Testing では、すべての状態をリセットするためのボタンが用意されました。 [テスト] > [Live Unit Testing] > [ソリューションの Live Unit Testing 状態をリセットする] に移動します。
  • Live Unit Testing で Razor ファイルがサポートされるようになりました。
  • 失敗するまでテストを実行すると、不安定なテストを見つけるのに役立ちます。エラーに達するまで、または [オプション] で設定したしきい値に達するまで、単体テストが実行されます。
  • 新しいコード カバレッジ変更セット レポートでは、変更したファイルや行のみのスコープで、コード カバレッジ レポートが表示されます。

パフォーマンスの向上

このリリースでは、Visual Studio の次の部分でパフォーマンスが向上しました。

  • [フォルダーを指定して検索] および [フォルダーを指定して置換]
  • Git ブランチの切り替え
  • 単体テストのパフォーマンス
  • 言語サービス構成スイッチの最適化
  • 応答が速いファイルの保存
  • C++ のインデックス作成

このリリースのすべてのパフォーマンス強化の詳細を確認してください


Dev Box での Visual Studio

  • Dev Box はローカル ネットワーク上にないため、ローカル ネットワーク上の Mac にインターネット経由で接続するには、パブリック IP を使う必要があります。
  • Android エミュレーターが読み込まれない場合は、[Windows の機能] ダイアログに移動して必ず Hyper-V を有効にしてください。 Hyper-V チェック ボックスがオフの場合は、オンにし、Dev Box を再起動してからエミュレーターを使ってください。

Developer Community から


既知の問題

.NETSDK: .NET SDK 17.4 にアップロードした後、どのプロジェクトも読み込まれない [7.0] .NET 7 プレビュー SDK ワークロードがインストールされている場合、特定のワークロードを使用するプロジェクトの読み込み、ビルド、実行が行われません。プレビュー .NET 7 SDK がインストールされている場合、microsoft.net.workload.mono.toolchain などのワークロード依存関係を持つプロジェクトのビルド、読み込み、または実行が失敗する可能性があります。 この問題の例については、こちらをご覧ください。

解決策: この問題を解決するための最善の方法は、.NET 7 プレビュー SDK をアンインストールすることです。 詳しい手順については、dotnet のアンインストール手順に関するページをご覧ください。 たとえば、Windows では、プログラムの追加と削除を使用して dotnet プレビュー SDK をアンインストールできます。 もう 1 つの方法は、フォルダー C:\Program Files\dotnet\sdk-manifests\microsoft.net.workload.mono.toolchain を削除することですが、これはファイル ベースのインストールでのみ機能します。 Dotnet-core-uninstall は、.NET 7 プレビュー SDK をアンインストールするためのもう 1 つのオプションです。

Python とネイティブ混合モードのデバッグ: Python とネイティブ混合モードのデバッグには、仮想環境の使用中に発生する既知のバグが存在します。 Python for Windows では venv 用のスタブ python.exe が使用されるため、Visual Studio ではサブプロセスとして python.exe を探して読み込みます。 Python 3.8 以降の場合 - デバッグ セッションを開始すると、混合モードではマルチプロセス デバッグに対応していないため、実際のアプリではなく、そのスタブ プロセスのみをデバッグします。 アタッチ シナリオの場合、回避策は正しい python.exe にアタッチすることです。 起動/F5 の場合、回避策はありません。残念ながら、venv を避ける必要があります。 3.8 より前のバージョンの Python の場合、混合モードのデバッグは venv で想定どおりに動作します。 グローバル環境で実行すると、どのバージョンの Python でもこれらの問題は発生しません。 詳細については、「Python とネイティブの両方をデバッグできない」を参照してください。

NUnit テストの検出/実行: テスト エクスプローラーからの NUnit テストの検出/実行が 17.4 で失敗し、[出力] ペインに "Framework バージョンが不明です: 7.0" の例外が表示される

解決策: Nunit3TestAdapter への参照がある場合は、それが 4.3.1 以降に更新されていることを確認してください。

NuGet パッケージVisual Studio 17.4 では、クラス ライブラリ プロジェクトの発行中に NuGet パッケージが生成されません。

解決策 これは、すべての .NET プロジェクトの種類間で Visual Studio の発行動作を一貫性のあるものにするために、17.4 で意図的に変更されたものです。 クラス ライブラリ プロジェクトの NuGet パッケージを生成するには、次のいずれかの方法をお勧めします。

  1. ビルド時に NuGet パッケージを生成するようにプロジェクト プロパティを設定する (こちらを参照)、または
  2. 右クリック -> [パック] で使用できる pack コマンドを実行する (こちらを参照) この新しい変更により、publish コマンドを実行すると、他のすべての .NET プロジェクトの種類に対する動作と同様に、クラス ライブラリの発行の出力が生成されます。 詳細については、こちらのドキュメント ページを参照してください。 MSBuild のさまざまな pack プロパティを使用して pack の動作を変更することもできます (こちらを参照)

Visual Studio 2022 のすべての未解決の問題と、利用可能な回避策については、以下のリンクから参照してください。


.NET 7 を現在利用できます

.NET 7 では、アプリのパフォーマンスが向上し、C# 11/F# 7、.NET MAUI、ASP.NET Core/Blazor、Web API、WinForms、WPF などの新機能が提供されます。 .NET 7 では、簡単に .NET 7 プロジェクトをコンテナー化し、GitHub Actions で CI/CD ワークフローを設定し、クラウドネイティブの監視を実現することもできます。

フィードバックと提案

皆様のご意見をお待ちしております。 インストーラーまたは Visual Studio IDE の右上隅にある [フィードバックの送信] アイコンを使用するか、[ヘルプ] > [フィードバックの送信] から、問題の報告または機能の提案フィードバック アイコン を行うことができます。 Visual Studio Developer Community を使用して問題を追跡でき、コメントを追加したり、解決策を見つけたりできます。 ライブ チャット サポートを介して、無料のインストールのヘルプを取得することもできます。


ブログ

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


ページのトップへ