mcpField
W
windows-interop-modernize

windows-interop-modernize

github.com/fandhe-ai開発4199 回インストール1 日前に更新
リポジトリ

windows-interop-modernize について

Win32、COM、WinRT、WPF/WinForms、UWP にまたがる相互運用とモダナイズのリファレンスです。Windows アプリの保守や移行を計画する開発者向けに、タスク別に API や手順を探せる構成です。

主な機能

  1. 01Win32、COM、WinRT の相互運用を網羅
  2. 02WPF/WinForms での XAML ホストを案内
  3. 03UWP から Windows App SDK への移行資料
  4. 04タスクから分類別リファレンスを案内
  5. 05移行判断と用語を解説

活用シーン

  1. 01既存アプリのモダナイズや移行経路を評価
  2. 02デスクトップアプリから WinRT API を呼び出す
  3. 03WPF または WinForms に WinUI 3 コンテンツをホスト
  4. 04UWP アプリの Windows App SDK 移行を計画

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/fandhe-ai/agent-reference-skills --skill windows-interop-modernize

インストール後、Claude Code で/windows-interop-modernizeを入力して読み込まれたか確認します。

同梱ファイル

SKILL.md と一緒にインストールされる参考資料やスクリプト。

references/cppwinrt/
advanced-concurrency.md
agile-objects.md
async-coroutines.md
author-apis.md
author-coclasses.md
base-type.md
binding-collection.md
boxing.md
collections.md
com-ptr-iinspectable.md
completion-source.md
consume-apis.md
consume-com.md
diag-direct-alloc.md
error-handling.md
events-delegates.md
extension-points.md
get-started.md
init-apartment.md
interop-abi.md
interop-winrt-cx-async.md
interop-winrt-cx.md
macros.md
move-to-winrt-from-csharp.md
move-to-winrt-from-cx.md
move-to-winrt-from-wrl.md
naming.md
native-interop.md
natvis.md
overview.md

詳細

プロジェクトの README より

Windows Interop / Modernize リファレンス

Win32・COM・C++/WinRT・C#/WinRT・XAML Islands・WPF/WinForms・UWP を横断する相互運用と近代化のリファレンス。 既存の Win32/WPF/WinForms/UWP 資産に WinRT API や WinUI 3 コンテンツを組み込む、または UWP から Windows App SDK へ移行する際の API・手順を蒸留する。 ユーザーのタスクに応じて適切な README.md を読み、そこから個別ファイルへ辿ること。

ディレクトリ構成

skills/windows-interop-modernize/
  SKILL.md
  references/
    migration-planning/
      README.md
      migration-decision-guide.md
      migration-terminology.md
      modernize-overview.md
    win32-com/
      README.md
      com-create-instance.md
      com-initialization.md
      com-smart-pointers.md
      create-window.md
      cswin32.md
      dialog-box.md
      dpi-awareness.md
      extended-window-styles.md
      hresult-error-handling.md
      iunknown.md
      message-box.md
      message-loop.md
      pinvoke-csharp.md
      register-window-class.md
      win32-data-types.md
      window-lifecycle.md
      window-messages.md
      window-procedure.md
      window-styles.md
      windows-rs.md
    cppwinrt/
      README.md
      advanced-concurrency.md
      agile-objects.md
      async-coroutines.md
      author-apis.md
      author-coclasses.md
      base-type.md
      binding-collection.md
      boxing.md
      collections.md
      com-ptr-iinspectable.md
      completion-source.md
      consume-apis.md
      consume-com.md
      diag-direct-alloc.md
      error-handling.md
      events-delegates.md
      extension-points.md
      get-started.md
      init-apartment.md
      interop-abi.md
      interop-winrt-cx-async.md
      interop-winrt-cx.md
      macros.md
      move-to-winrt-from-csharp.md
      move-to-winrt-from-cx.md
      move-to-winrt-from-wrl.md
      naming.md
      native-interop.md
      natvis.md
      overview.md
      pass-parms-to-abi.md
      projection-headers.md
      std-cpp-data-types.md
      strings.md
      troubleshooting.md
      use-csharp-component-from-cpp-winrt.md
      weak-references.md
      xaml-binding.md
      xaml-cust-ctrl.md
    csharp-winrt/
      README.md
      agile-objects.md
      aot-trimming.md
      api-availability-checks.md
      async-operations.md
      authoring-winrt-components.md
      com-interop.md
      dotnet-winrt-removal.md
      net-mappings-of-winrt-types.md
      net-projection-from-cppwinrt-component.md
      overview.md
      sdk-net-ref-targetframework.md
      window-handle-interop.md
      winrt-api-desktop-support.md
    xaml-islands/
      README.md
      desktop-child-site-bridge.md
      desktop-window-xaml-source.md
      dpi-and-sizing.md
      hosting-wpf-winforms-win32.md
      input-focus-navigation.md
      limitations.md
      overview.md
      uwp-vs-winui3-migration.md
      windows-xaml-manager.md
    wpf-winforms-interop/
      README.md
      ai-assisted-wpf-migration.md
      copilot-modernization-guide.md
      dotnet-upgrade-assistant.md
      hwndhost-hwndsource.md
      windows-app-sdk-existing-project.md
      winforms-application-run.md
      winforms-designer.md
      winforms-form-control.md
      winforms-patterns-winui3.md
      winrt-apis-in-wpf-winforms.md
      wpf-application.md
      wpf-basic-controls.md
      wpf-commanding.md
      wpf-data-binding.md
      wpf-dependency-property.md
      wpf-routed-events.md
      wpf-styles-templates.md
      wpf-vs-winui3.md
      wpf-window.md
      wpf-winforms-hosting.md
      wpf-xaml-overview.md
    uwp-migration/
      README.md
      ai-assisted-migration.md
      applifecycle-migration.md
      background-task-migration.md
      case-study-1-photolab.md
      case-study-2-photo-editor.md
      dwritecore-migration.md
      feature-mapping.md
      keyboard-events-migration.md
      migration-overview.md
      misc-migration-guidance.md
      mrtcore-migration.md
      namespace-mapping.md
      overall-migration-strategy.md
      push-notifications-migration.md
      threading-migration.md
      toast-notifications-migration.md
      upgrade-assistant.md
      what-is-supported.md
      windowing-migration.md
      winui3-ui-migration.md

探索手順

タスクからカテゴリを引き、カテゴリの README.md で目的のページを特定する:

  1. 下記マッピング表でタスクに対応するカテゴリを探す
  2. そのカテゴリの references/{category}/README.md を参照して目的のページを特定する
  3. 該当ページの .md を Read して詳細を確認する

タスク → カテゴリ マッピング

タスクカテゴリ参照 README
既存アプリを upgrade / modernize in place / WinUI 3 移行のどれで進めるか判断したい、用語 (upgrade / migrate / port / modernize) を確認したいmigration-planningreferences/migration-planning/README.md
既存 WPF / WinForms / Win32 アプリに追加できる Windows 機能と、Windows App SDK・package identity の要否を知りたいmigration-planningreferences/migration-planning/README.md
CreateWindowExW / WNDPROC / メッセージループで生の Win32 ウィンドウを作成したいwin32-comreferences/win32-com/README.md
COM オブジェクトの初期化・生成・参照カウント管理 (CoInitializeEx, CoCreateInstance, IUnknown, ComPtr) を行いたいwin32-comreferences/win32-com/README.md
C# から CsWin32 / P/Invoke で Win32 API を呼びたい、Rust から windows-rs を使いたいwin32-comreferences/win32-com/README.md
C++ で WinRT ランタイムクラスを消費・作成し、非同期処理やイベントを扱いたいcppwinrtreferences/cppwinrt/README.md
C++/WinRT の高度な非同期 (resume_after / resume_on_signal / completion_source)、C++/CX 非同期相互運用、基底型 override、natvis・直接アロケーション診断・トラブルシューティングを知りたいcppwinrtreferences/cppwinrt/README.md
IDL で API を作成し ABI・ネイティブ相互運用やエラーハンドリングを実装したいcppwinrtreferences/cppwinrt/README.md
C# から WinRT API を呼び出す、TFM 設定・非同期・型マッピングを把握したいcsharp-winrtreferences/csharp-winrt/README.md
ComWrappers / AOT・trimming 対応や WinRT コンポーネントの作成を行いたいcsharp-winrtreferences/csharp-winrt/README.md
WPF/WinForms/Win32 アプリに WinUI 3 の XAML コンテンツをホストしたいxaml-islandsreferences/xaml-islands/README.md
DesktopWindowXamlSource / DesktopChildSiteBridge でフォーカス・DPI・サイズ同期を扱いたいxaml-islandsreferences/xaml-islands/README.md
WPF / WinForms 既存アプリの基本 API (Window, Application, DependencyProperty, データバインディング) を確認したいwpf-winforms-interopreferences/wpf-winforms-interop/README.md
HwndHost/HwndSource や WindowsFormsHost/ElementHost で WPF と WinForms・Win32 を相互ホストしたいwpf-winforms-interopreferences/wpf-winforms-interop/README.md
WPF/WinForms に Windows App SDK を追加し WinRT API を呼びたいwpf-winforms-interopreferences/wpf-winforms-interop/README.md
WinForms のコントロール・レイアウト・バインディング・起動処理を WinUI 3 に対応付けたい、WPF 移行を AI エージェントで進めたいwpf-winforms-interopreferences/wpf-winforms-interop/README.md
(どの移行パスか未定の場合は migration-planning から) UWP アプリを Windows App SDK / WinUI 3 へ移行する全体戦略・名前空間対応を知りたいuwp-migrationreferences/uwp-migration/README.md
ウィンドウ管理・スレッディング・通知・バックグラウンドタスクの UWP 固有 API を移行したいuwp-migrationreferences/uwp-migration/README.md
.NET Upgrade Assistant で機械的な移行を進めたいuwp-migrationreferences/uwp-migration/README.md
PhotoLab (C#) / Photo Editor (C++/WinRT) の移行事例を参考にしたい、AI コーディングエージェントで移行を自動化したいuwp-migrationreferences/uwp-migration/README.md

このスキルは Win32・COM・C++/WinRT・C#/WinRT・XAML Islands・WPF/WinForms・UWP 間の相互運用と移行手順のみを扱う。WinUI 3 のコントロール API 自体は windows-winui-controls、レイアウト・スタイル・XAML 記法は windows-winui-ui、Windows App SDK のランタイム機能は windows-app-sdk が担当する。MSIX packaging / package identity の詳細は windows-packaging-publish、Windows AI Foundry は windows-ai が担当する。

コメント