「Visual Studio 2022 Community をオフライン環境に入れたいのに、レイアウトフォルダーしかなくインストーラーが見つからない」「インストーラーを起動しても一瞬で消え、ログには証明書エラー…」。こうしたトラブルは、仕組みと手順を理解していればきれいに解決できます。本記事では、正しいオフラインレイアウトの作り方から、署名エラー(0x80131509)対策までを一つずつ丁寧に解説します。
Visual Studio 2022 Community が「オフラインインストールできない」典型パターン
まずは、よくある質問・トラブルを整理しておきます。
- オンラインPCでパッケージをダウンロードしたが、コピー先にはフォルダーしかなく .exe が見つからない
vs_Community.exeやvs_setup.exeを起動してもすぐウィンドウが消えてしまう- ログを確認すると「署名の検証に失敗」「証明書を検証できない 0x80131509」などのエラーが出ている
このような状況は、
- 「オフラインレイアウト」の作り方が中途半端になっている
- オフラインPC側のルート証明書が古く、コード署名を検証できていない
というのが主な原因です。逆に言えば、
- オンラインPCで正しくオフラインレイアウトを作る
- オフラインPCの証明書ストアを最新化する
この二つをきちんと押さえれば、ほとんどのケースで解決できます。
正しい「オフライン レイアウト」の作り方(オンラインPCの作業)
Visual Studio のインストーラーには、次のような役割分担があります。
- ブートストラッパー:
vs_Community.exeなどの小さな EXE。Web から必要なものをダウンロードする「入口」。 - オフラインレイアウト:事前にすべてのパッケージをダウンロードしておくキャッシュ一式(フォルダー構成)。
- vs_setup.exe:レイアウトのルートに置かれる本体インストーラー。ここから UI が起動する。
「フォルダーしかない」「インストーラーが見つからない」という場合は、このレイアウト作成が最後まで完了しておらず、vs_setup.exe が落ちていない状態と考えられます。
ブートストラッパー(vs_Community.exe)を取得する
まずはオンラインPCで、公式サイトから Visual Studio 2022 Community のブートストラッパーをダウンロードします。ファイル名の例は次の通りです。
vs_Community.exe
ダウンロードしたら、念のため デジタル署名を確認しておくと安心です(後述の「署名の確認」と同じ手順)。
管理者コマンドプロンプトで layout コマンドを実行する
次に、オンラインPCで「オフラインレイアウト」を作成します。これは単なるコピーではなく、インストーラーに対して「必要なパッケージを全部ダウンロードして、このフォルダーに展開しておいて」とお願いする作業です。
- スタートメニューから「Windows Terminal(管理者)」または「コマンドプロンプト(管理者)」を開く
vs_Community.exeを保存したフォルダーに移動する- 次のようなコマンドを実行する
vs_Community.exe --layout D:\VS2022_Offline ^
--lang ja-JP en-US ^
--add Microsoft.VisualStudio.Workload.ManagedDesktop ^
--includeRecommended ^
--useLatestInstaller
主なオプションの意味を、表にまとめると次のようになります。
| オプション | 意味 | 例 |
|---|---|---|
--layout <フォルダー> | オフラインレイアウト(キャッシュ)を保存する場所 | --layout D:\VS2022_Offline |
--lang <言語> | インストーラー・IDE の言語パック | --lang ja-JP en-US |
--add <ワークロードID> | 必要なワークロードだけをダウンロード | --add Microsoft.VisualStudio.Workload.ManagedDesktop |
--includeRecommended | 「推奨」コンポーネントも含める(最小構成よりリッチになる) | --includeRecommended |
--useLatestInstaller | 最新バージョンの VS Installer をレイアウトに含める | --useLatestInstaller |
--keepLayout | 既存レイアウトを保持しつつ更新(後から使う) | --keepLayout |
代表的なワークロードIDも整理しておきます。
| ワークロードID | 用途 |
|---|---|
Microsoft.VisualStudio.Workload.ManagedDesktop | .NET デスクトップ(WPF / Windows フォームなど) |
Microsoft.VisualStudio.Workload.NativeDesktop | C++ デスクトップ開発 |
Microsoft.VisualStudio.Workload.NetWeb | ASP.NET / Web 開発 |
Microsoft.VisualStudio.Workload.Azure | Azure 関連開発 |
必要なワークロードは、後から追加することも可能ですが、オフライン環境では最初のレイアウトに含めておかないと追加できない点に注意してください。
レイアウトフォルダーの完成形と「インストーラーがない」問題
layout コマンドが最後まで正常終了すると、レイアウトフォルダーは概ね次のような構成になります。
VS2022_Offline\
vs_setup.exe
files\
layout.json
packages\
certificates\
...
- ルート直下に
vs_setup.exeがある packagesフォルダー配下に多数の.vsixや.msi等がある
もし、
vs_setup.exeが見当たらない- フォルダーだけが存在し、容量が明らかに少ない(数百MB程度しかない)
といった状態であれば、レイアウト作成が途中で止まった可能性が高いです。よくある原因は次の通りです。
- ディスクの空き容量不足(数十GB以上必要になる場合あり)
- オンライン途中で回線が切れた/PC を再起動した
- 権限不足やウイルス対策ソフトがブロックした
この場合は、同じコマンドでレイアウトを再実行してください。破損した状態のままコピーしても、オフラインPCでは正常にインストールできません。
オフラインPCでのインストール手順
レイアウトフォルダーをオフラインPCにコピーする
レイアウトが完成したら、USBメモリや外付けSSDなどでオフラインPCへコピーします。大量の小さなファイルがあるため、できれば高速な媒体(SSDや十分な速度のUSBメモリ)を使うことをおすすめします。
コピー時にミスが多いのが、
- フォルダーの中身だけをバラバラにコピーしてしまう
- 途中でコピーが失敗しているのに気付かない
といったパターンです。Windows 標準の robocopy を使うと、多少のエラーに強く、検証もしやすくなります。
robocopy D:\VS2022_Offline E:\VS2022_Offline /MIR
コピー後、オフラインPC側でも vs_setup.exe の存在と、フォルダー容量(数十GB程度)を目視で確認しておきましょう。
vs_setup.exe からオフラインインストールを実行する
オフラインPC側では、レイアウトフォルダーのルートにある vs_setup.exe を起動します。これが「インストーラー本体」です。
- エクスプローラーから
vs_setup.exeをダブルクリック - またはコマンドプロンプトで次のように実行
.\vs_setup.exe --noWeb
--noWeb を付けることで、仮にネットワークにつながっていてもWebアクセスを禁止し、レイアウト内のパッケージだけを使ってインストールします。完全オフライン環境、あるいはプロキシで制限された環境では、このオプションを付けておく方がトラブルを避けやすくなります。
セットアップUIが起動したら、必要なワークロードを選んでインストールを開始します。ただし、レイアウトに含めていないワークロードを追加で選択すると、
- 「ダウンロードできません」
- 「インターネット接続が必要です」
といったエラーになるため、オフライン環境で利用したいものは事前にレイアウト作成時に指定しておきましょう。
「インストーラーが即終了する」「署名の検証に失敗(0x80131509)」への対処
vs_setup.exe を実行したときに、
- ウィンドウが一瞬表示されてすぐ消える
- ログに 「署名の検証に失敗」「証明書を検証できない (0x80131509)」 などが記録される
といった挙動が出る場合、ほとんどは証明書チェーンの検証に失敗していることが原因です。Visual Studio インストーラーは、実行時に自身のデジタル署名が正しいかどうかを検証しますが、その際に使うルート証明書が古い・欠落していると、この検証に失敗してしまいます。
よくある原因パターン
- オフラインPCのシステム日時が大きくずれている
- ルート証明書・中間証明書が古く、Microsoft の署名チェーンが信頼されていない
- セキュリティソフトや AppLocker などが
vs_setup.exeの実行をブロックしている - レイアウト自体が破損している
順番に潰していくと原因が切り分けやすくなります。
ステップ1:システム日時の確認
まずは簡単なところからです。オフラインで長期間運用されているサーバーやクローズドネットワークでは、NTP同期が外れて年月日が大きくずれているケースが珍しくありません。
- タスクバーの時計をクリックして日付と時刻を確認
- 数年単位でずれていないか、タイムゾーンが正しいかをチェック
もしズレている場合は正しい日時に修正してから、再度 vs_setup.exe を実行してみます。これだけで解決する場合もあります。
ステップ2:オンラインPCからルート証明書をエクスポートして取り込む
次に、オフラインPCの証明書ストア(特に「信頼されたルート証明機関」と「中間証明機関」)を新しくしてあげます。代表的な方法が、オンラインPC側で Windows Update 経由のルート証明書セットを SST ファイルとして書き出し、オフラインPCにインポートするやり方です。
オンラインPC側の作業
オンラインPCで管理者権限のコマンドプロンプトを開き、次のコマンドを実行します。
mkdir C:\Temp
certutil -generateSSTFromWU C:\Temp\roots.sst
roots.sstに、Windows Update から取得した最新のルート証明書情報がまとめて出力されます。
この roots.sst ファイルを、USBメモリ等でオフラインPCにコピーします。
オフラインPC側の作業
オフラインPCでも管理者権限のコマンドプロンプトを開き、次のコマンドを実行します。
certutil -addstore -f root C:\Temp\roots.sst
certutil -addstore -f CA C:\Temp\roots.sst
rootストア(信頼されたルート証明機関)とCAストア(中間証明機関)に証明書が追加されます。
完了したら PC を再起動し、再度 vs_setup.exe を実行してみてください。署名検証エラーが解消するかを確認します。
ステップ3:vs_setup.exe のデジタル署名を確認する
念のため、インストーラーが本当に Microsoft から提供されている正規のものかもチェックしておきましょう。
vs_setup.exeを右クリックして「プロパティ」を開く- 「デジタル署名」タブを開く
- 署名者の一覧に「Microsoft Corporation」などが表示されていることを確認
- 署名を選択して「詳細」をクリックし、「このデジタル署名は問題ありません」と表示されるかを確認
ここでエラーが出る場合、
- ルート証明書チェーンに問題がある
- ダウンロード途中でファイルが破損している
といった可能性があります。前述の証明書更新を行っても解決しない場合は、オンラインPC側で --useLatestInstaller を付け直してレイアウトを作り直すのが確実です。
ステップ4:セキュリティソフトやアプリ制御の影響を確認
企業環境や高セキュリティ環境では、
- エンドポイントセキュリティ(ウイルス対策、EDR 等)
- AppLocker / Windows Defender Application Control などのアプリケーション制御
によって、未知の EXE や証明書を持つ EXE の実行がブロックされていることがあります。ログ上は「署名エラー」に見えても、実際にはポリシーで止められているケースもあります。
管理者権限を持っている場合は、次のような観点で確認します。
- セキュリティソフトのイベントログに
vs_setup.exeのブロックが記録されていないか - AppLocker のログ(イベントビューアー)に拒否イベントが出ていないか
- 一時的に
VS2022_Offlineフォルダーを除外パスに設定する
企業PCの場合は、セキュリティ担当者に「Visual Studio オフラインインストーラーの実行を許可してほしい」と相談するのが安全です。
ステップ5:レイアウトの作り直しとログ採取
証明書とセキュリティ設定に問題がなさそうな場合は、レイアウト自体が破損している可能性があります。オンラインPCで、改めて次のようなコマンドでレイアウトを作り直します。
vs_Community.exe --layout D:\VS2022_Offline ^
--lang ja-JP en-US ^
--add Microsoft.VisualStudio.Workload.ManagedDesktop ^
--includeRecommended ^
--useLatestInstaller
また、原因調査のためにはインストーラーのログを取得しておくと役立ちます。
.\vs_setup.exe --noWeb --log C:\Temp\vsinstall.log
これにより、C:\Temp\vsinstall.log に詳細なログが出力されます。エラーコードや「証明書」「署名」「trust」などのキーワードで検索すると、どこで失敗しているかの手掛かりが得られます。
トラブルシューティングのまとめ表
| 症状 | 主な原因候補 | 対処のポイント |
|---|---|---|
フォルダーだけで vs_setup.exe がない | レイアウト作成が途中で中断/失敗 | オンラインPCで --layout を再実行し、完了するまで待つ |
| インストーラーがすぐ消える | 証明書エラー、セキュリティソフトによるブロック | システム日時・証明書更新・セキュリティログを確認 |
| ログに 0x80131509 などのエラー | コード署名の検証に必要なルート証明書が古い | オンラインPCから roots.sst を作成し、certutil -addstore で取り込み |
| 特定のワークロードだけ失敗 | レイアウトにそのワークロード用パッケージが含まれていない | --add オプションを追加してレイアウトを作り直す |
オフライン運用を楽にするためのコツ
ここからは、複数台のオフラインPCに Visual Studio を展開する場合や、長期的に運用する場合の「実務的なコツ」を紹介します。
容量見積りと格納場所の設計
Visual Studio のオフラインレイアウトは、選ぶワークロードによってサイズが大きく変わりますが、
- .NET デスクトップ + C# + 推奨コンポーネント程度でも20〜30GB前後
- C++ や Web、Azure などを広く含めると40〜60GB以上になることもある
といったイメージです。
- レイアウト用に専用のドライブ(例:
D:\VS_Layouts)を用意する - 外付けSSDにレイアウトを置き、そのままインストーラーとして持ち運ぶ
- 閉域ネットワーク内の共有フォルダーに配置し、複数PCから参照させる
といった構成にしておくと、後からのメンテナンスが楽になります。
レイアウトの更新(–keepLayout)で最新化を続ける
Visual Studio 2022 は定期的にアップデートされます。オフライン環境でも、可能なら数か月〜半年に一度程度はオンラインPCでレイアウトを更新しておくと、
- セキュリティ修正済みのコンポーネントを配布できる
- 古いバージョンによる不具合を回避しやすくなる
といったメリットがあります。
既存レイアウトを更新する場合は、次のように --keepLayout を付けて実行します。
vs_Community.exe --layout D:\VS2022_Offline ^
--lang ja-JP en-US ^
--add Microsoft.VisualStudio.Workload.ManagedDesktop ^
--includeRecommended ^
--keepLayout ^
--useLatestInstaller
こうすることで、既にダウンロード済みのパッケージは再利用され、新しく必要な分だけが追加でダウンロードされます。更新後は、オフラインPC側のレイアウトフォルダーと入れ替えればOKです。
言語パックやワークロードを後から追加したい場合
「最初は日本語だけで良いと思っていたが、途中から英語の UI も必要になった」など、後から要求が変わることもあります。その場合も、
--langに追加したい言語を増やす--addに追加したいワークロードIDを加える--keepLayout付きで再実行
という手順を踏めば、既存レイアウトを拡張することができます。例:
vs_Community.exe --layout D:\VS2022_Offline ^
--lang ja-JP en-US ^
--add Microsoft.VisualStudio.Workload.ManagedDesktop ^
--add Microsoft.VisualStudio.Workload.NetWeb ^
--includeRecommended ^
--keepLayout ^
--useLatestInstaller
更新後、オフラインPCで再度 vs_setup.exe を起動すると、追加されたワークロードや言語パックを選択できるようになります。
複数プロジェクト向けにレイアウトを分ける
実務では、
- .NET だけ使うチーム
- C++ だけ使うチーム
- 両方使うチーム
といった具合に用途が分かれていることが多いです。このような場合、
D:\VS2022_DotNet_OfflineD:\VS2022_CPP_Offline
のようにレイアウトを分けて作っておくと、
- コピーする容量を減らせる
- ライセンスやポリシー上、不要なコンポーネントを配布したくない場合にも対応しやすい
といった利点があります。
まとめ:ポイントだけおさらい
最後に、本記事の要点を整理しておきます。
- Visual Studio 2022 Community をオフラインでインストールするには、まずオンラインPCで「オフラインレイアウト」を正しく作成する必要がある。
- 完成したレイアウトのルートには
vs_setup.exeが存在する。これがオフラインPCで起動すべきインストーラー本体。 - フォルダーしかなく .exe がない場合は、レイアウト作成が途中で失敗している可能性が高いので、
--layoutコマンドを再実行する。 - インストーラーがすぐ消える/0x80131509 といったエラーが出る場合は、システム日時とルート証明書・中間証明書の更新を最優先で確認する。
- セキュリティソフトや AppLocker がブロックしていることもあるので、ログとポリシーをチェックする。
- レイアウトは
--keepLayoutで定期的に更新し、必要なワークロードや言語パックを追加しておくと、オフライン環境の運用が格段に楽になる。
これらのポイントを押さえておけば、「Visual Studio 2022 Community のオフラインインストールができない」という状況から抜け出しやすくなります。同じ手順で Professional / Enterprise 版にも応用できるので、オフライン環境をお持ちの方は、ぜひレイアウト作成と証明書更新をセットで運用してみてください。

コメント