在桌面應用程式中使用現代 Windows 功能

你不需要重寫 WPF、Windows Forms 或 Win32 應用程式來享受現代 Windows 的功能。 Windows 應用程式 SDK 以及更廣泛的 Windows 平台提供模組化功能,你可以以自己的步調逐步採用。

本文概述了你可以透過以下方式為桌面應用程式新增的現代功能:

  • Windows 執行階段(WinRT)API 在 Windows SDK
  • Windows 應用程式 SDK
  • MSIX 封裝或封裝識別碼

備註

還有其他應用程式現代化的面向,這裡沒有涵蓋,例如更新到較新版本的 .NET 或 Visual Studio 工具。 想了解更多現代化的相關資訊,請從以下內容開始:

Windows 執行階段應用程式介面

許多Windows平台功能——應用程式通知、共享合約、藍牙等——都是透過Windows 執行階段(WinRT)APIs公開的。 你可以直接從 WPF、Windows Forms 和 C++ Win32 應用程式呼叫這些 API。

為應用程式新增現代功能的第一步是將專案設定為使用 WinRT API。 如需詳細指示,請參閱:

Windows 應用程式 SDK

Windows 應用程式 SDK 是如何實現許多現代化的Windows平台功能的。 你可以在現有應用程式中使用 Windows 應用程式 SDK,而不需更改使用者介面架構。

Important

這些 API 採用 WinRT API 模型,因此請務必將專案設定為使用 WinRT API。

新增 Windows 應用程式 SDK NuGet 套件,並在現有程式碼中呼叫其 API。 如需詳細指示,請參閱:

應用程式封裝

封裝定義了你的應用程式如何安裝、更新及整合到 Windows 系統。 選擇打包式或非打包式應用程式會影響你能使用的功能、依賴的部署模式、存取 Microsoft Store 與企業部署流程,以及客戶整體體驗。

欲了解更多資訊,請參閱:

MSIX 套件

用 MSIX 打包你的應用程式可以取代你目前的安裝程式。 它提供現代且可靠的安裝體驗、乾淨卸載、自動更新及套件識別。 MSIX 封包與應用程式程式碼現代化是分開的——你可以用 MSIX 打包 WPF、WinForms 或 Win32 應用程式,而不需更改任何原始碼。

欲了解更多資訊,請參閱:

需要套件身分識別的功能

部分Windows平台功能——包括背景任務、應用程式擴充功能、分享目標、Windows AI Foundry API、檔案關聯及啟動任務——要求你的應用程式在執行時擁有套件身份。 如果你想保留目前的安裝程式,仍然可以授權未封裝的應用程式身份,而不需要完整的 MSIX 封裝。 這種方法有時被稱為稀疏封裝帶有外部位置的封裝

欲了解更多資訊,請參閱:

加入現代化功能

Windows 應用程式開發的功能中有許多能用於 WPF、WinForms 和 Win32 應用程式的特色。 你可以瀏覽該區塊,或使用這個非完整清單直接跳到一些常見特徵。

遷移到 WinUI 3

如果你計劃進行更大規模的現代化工作,或將新功能作為獨立模組建置,可以考慮用 WinUI 3 和 Windows 應用程式 SDK 來建立新元件。 WinUI 3 是 Windows 桌面應用程式的現代原生 UI 框架,也是新開發的推薦路徑。

請參考 「建立你的第一個 WinUI 3 應用程式 」來開始。