· · 1 分で読めます

WinApp VS Code拡張機能:エディターを離れずにWindowsアプリを実行、デバッグ、パッケージ化

WinApp VS Code拡張機能は、Windows App Development CLIの全機能をVS Codeに直接統合します。Visual Studioなしで、WPF、WinUI、.NET、C++アプリをパッケージIDで実行、デバッグ、パッケージ化、署名できます。

VS Code Windows WinUI .NET WPF Developer Tooling Desktop
この記事は他の言語でも読めます:English, Català, Español, Deutsch, Français, Português, Italiano, 中文, 한국어, Русский, हिन्दी, Polski, Türkçe, العربية, Bahasa Indonesia, Nederlands

この投稿は自動翻訳されました。元の記事はこちらからご覧いただけます。

VS CodeでWindowsアプリを開発しようとしたことがある人なら、あの瞬間を知っているはずです。好みのエディターでコードを書いていると、突然Windows APIのためにパッケージIDが必要になる。あるいはMSIXを作成したり、パッケージを署名したりする必要が出てくる。気づけばVisual Studioを開いていたり、夜11時に「msix packaging without visual studio」をGoogle検索していたりする。

そのような摩擦はもうなくなりました。WinApp VS Code拡張機能がパブリックプレビューになりました。これはWindows App Development CLIの全機能がVS Codeに直接統合されたものです。別途インストール不要、Visual Studio不要。

F5でパッケージID

Windows API — 通知、バックグラウンドタスク、オンデバイスAI機能、シェアターゲット — の多くは、アプリがパッケージIDを持っている必要があります。これがないと、それらのAPIは動作しません。

従来、パッケージIDを取得するには完全なMSIXインストーラーを作成するか、Visual Studioから実行する必要がありました。WinApp拡張機能は、カスタムwinappデバッグタイプによってこれを完全に変えます。

launch.jsonにこれを追加します:

{
    "version": "0.2.0",
    "configurations": [
        {
            "type": "winapp",
            "request": "launch",
            "name": "WinApp: Launch and Attach"
        }
    ]
}

F5を押すだけ。拡張機能がビルド出力とマニフェストを見つけ、winapp runでアプリにパッケージIDを付与し、デバッガーをアタッチします。.NETアプリはcoreclr(C# Dev Kit必要)、C/C++はcppvsdbg、Node/Electronは組み込みデバッガーを使用します。

preLaunchTaskを設定すれば、F5を押す前に自動的にビルドされます。Visual Studioと同じビルド&ランチフローがVS Codeで実現できます。

コマンドパレットですべてを操作

Ctrl+Shift+Pを開いてWinAppと入力すれば、完全なツールキットにアクセスできます:

  • Initialize Project — Windows SDKおよび/またはWindows App SDKでプロジェクトを設定
  • Run Application — パッケージIDを持つルースレイアウトパッケージアプリとして起動
  • Create MSIX Package — 証明書とランタイムオプションでアプリをパッケージ化
  • Update Manifest Assets — 単一のソース画像から必要なすべてのアプリアイコンを自動生成
  • Generate / Install Certificate — 開発証明書の管理
  • Sign Package — MSIXまたは実行可能ファイルに署名
  • Run SDK Toolmakeappxsigntoolmtmakepriを直接実行

WinApp CLIのインストールも不要です。拡張機能にバンドルされています。

多くのフレームワークに対応

.NET WPF/WinUI専用のツールではありません。拡張機能は以下と連携します:

  • .NET: WPF、WinForms、Console、WinUI 3
  • C/C++: Win32、CMake、MSBuild
  • Electron / Node.js
  • Rust
  • Tauri
  • Flutter

この広さは意図的なものです。VS Codeはウェブやクロスプラットフォームの開発者が集まる場所です。Windowsパッケージングが必要なTauriやElectronアプリを開発している場合も、Visual Studioを採用することなくこの拡張機能でカバーできます。

.NET開発者にとっての重要性

私はVS Codeで多くの作業をします。Markdownを書いたり、設定を管理したり、小さなプロジェクトを編集したり、ターミナルを実行したりする場所です。しかし.NET Windowsデスクトップ開発においては、パッケージング関連の作業が必要な瞬間、Visual Studioが唯一の選択肢でした。

この拡張機能がそのギャップを埋めます。VS Codeを離れることなく、.NET Windowsデスクトップ開発の完全なサイクル — 編集、ビルド、パッケージIDで実行、デバッグ、パッケージ化、署名 — が完結します。これは本物の生産性向上です。

はじめに

code --install-extension Microsoft-WinAppCLI.winapp

または拡張機能ビュー(Ctrl+Shift+X)でWinAppを検索します。

要件:

  • Windows 10以降
  • VS Code 1.109.0以降
  • アプリの言語に対応したデバッガー拡張機能

詳細はChiara Mooneyのフルアナウンスをご覧ください。

まとめ

WinApp VS Code拡張機能は、VS Codeを使いながらパッケージング作業のためにVisual Studioに切り替えていた.NET Windowsデスクトップ開発者にとって待望の追加機能です。F5でパッケージID、コマンドパレットからMSIXパッケージ化、証明書管理の統合 — 正しい機能セットが揃っています。

次のWPFまたはWinUIプロジェクトで試してみてください。これまで回避してきた摩擦が大幅に軽減されます。

共有:
この記事のソースコードをGitHubで見る ↗
← .NET 10 de API baajoningu to OpenAPI o kumiawaseru
SQL MCP ServerをAzure App Serviceで動かす — コンテナ不要 →