Menggunakan fitur Windows modern di aplikasi desktop

Anda tidak perlu menulis ulang aplikasi WPF, Formulir Windows, atau Win32 untuk memanfaatkan fitur Windows modern. Platform SDK Aplikasi Windows dan Windows yang lebih luas menawarkan kemampuan modular yang dapat Anda adopsi secara bertahap, dengan kecepatan Anda sendiri.

Note

Artikel ini membahas penambahan fitur Windows modern ke aplikasi desktop Anda yang sudah ada. Jika Anda ingin memodernisasi rangkaian alat .NET atau pengompilasi C++, lihat modernisasi .NET dengan GitHub Copilot atau panduan Microsoft untuk porting dan peningkatan C++.

Memigrasikan kerangka kerja UI Anda?

Jika tujuan Anda adalah untuk sepenuhnya memodernisasi lapisan UI aplikasi Anda, jalur yang direkomendasikan adalah bermigrasi ke WinUI 3 — kerangka kerja UI asli untuk aplikasi desktop Windows. Lihat Membuat aplikasi WinUI 3 pertama Anda untuk memulai.

Jika Anda ingin menambahkan fitur Windows ke kerangka kerja aplikasi yang ada (WPF, WinForms, atau C++ Win32) tanpa mengubah lapisan UI Anda, lanjutkan membaca.

Pilih pendekatan Anda

Tiga pendekatan modernisasi bersifat independen. Anda dapat menggunakan satu, dua, atau ketiganya di aplikasi yang sama.

Approach Apa yang diberikannya kepada Anda Membutuhkan kemasan?
API WinRT Akses langsung ke API platform Windows (pemberitahuan, Bluetooth, kontrak berbagi, sensor, dan lainnya) dari aplikasi desktop .NET atau C++ apa pun Tidak, untuk sebagian besar API
SDK Aplikasi Windows Paket NuGet yang menghadirkan fitur pengembangan Windows modern (windowing, penyajian teks, sumber daya, dan lainnya) ke aplikasi yang ada Tidak, untuk sebagian besar fitur
Pemaketan MSIX Alat penginstal modern dengan penghapusan instalasi bersih, pembaruan otomatis, dan identitas paket; dapat ditambahkan tanpa mengubah kode sumber aplikasi N/A — pengemasan adalah pendekatan

Tip

Mulailah dengan API WinRT jika Anda ingin memanggil API platform Windows tertentu. Tambahkan SDK Aplikasi Windows saat Anda memerlukan fiturnya (DWriteCore, MRT Core, windowing). Tambahkan kemasan MSIX saat Anda memerlukan identitas paket atau ingin memodernisasi alat penginstal Anda.

API WinRT

API Windows Runtime (WinRT) mengekspos fitur platform Windows seperti pemberitahuan aplikasi, kontrak berbagi, Bluetooth, dan banyak lagi. Anda dapat memanggil API ini langsung dari aplikasi WPF, Formulir Windows, dan C++ Win32.

SDK Aplikasi Windows

SDK Aplikasi Windows memberikan fitur pengembangan Windows modern sebagai paket NuGet yang Anda tambahkan ke proyek yang ada. Anda tidak perlu mengubah kerangka kerja UI Anda.

Kemasan MSIX dan identitas paket

Kemasan MSIX menggantikan alat penginstal yang ada dan memberikan identitas paket aplikasi Anda. Beberapa fitur Windows — termasuk tugas latar belakang, tugas startup, asosiasi file, dan Windows AI Foundry — memerlukan identitas paket saat runtime. Jika Anda ingin tetap menggunakan penginstal yang sudah ada, Anda masih dapat memberikan identitas paket tanpa pemaketan MSIX lengkap — pendekatan yang terkadang disebut pemaketan dengan lokasi eksternal atau paket sparse.

Titik awal khusus kerangka kerja

Kerangka kerja Anda Titik awal yang direkomendasikan
WPF Menggunakan SDK Aplikasi Windows dalam proyek yang sudah ada
WinForms Menggunakan SDK Aplikasi Windows dalam proyek yang sudah ada
C++ Win32 Menggunakan SDK Aplikasi Windows dalam proyek yang sudah ada
C++/WinRT API WinRT untuk aplikasi desktop

Katalog fitur

Tabel berikut mencantumkan fitur modernisasi umum dan apakah memerlukan identitas SDK Aplikasi Windows atau paket.

AI

Feature SDK Aplikasi Windows diperlukan? Identitas paket diperlukan?
Windows AI Foundry No Yes

UI dan teks

Feature SDK Aplikasi Windows diperlukan? Identitas paket diperlukan?
Komponen WinUI 3 di aplikasi desktop Yes No
Merender teks dengan DWriteCore Yes No
Menerapkan Mica atau Acrylic ke aplikasi Win32 No No
Menerapkan sudut bulat No No
Menerapkan tema Windows No No

Siklus hidup aplikasi

Feature SDK Aplikasi Windows diperlukan? Identitas paket diperlukan?
Tugas latar belakang (SDK Aplikasi Windows) Yes Yes
Tugas pemula sistem No Yes

integrasi Windows

Feature SDK Aplikasi Windows diperlukan? Identitas paket diperlukan?
Integrasi lembar berbagi No No
API Pengguna Lintas Perangkat No No
Asosiasi file No Yes
Windows Widget No Yes

Keamanan

Feature SDK Aplikasi Windows diperlukan? Identitas paket diperlukan?
Loker Kredensial No No
OAuth 2.0 No No
Biometrik sidik jari No No
Kartu pintar No No
Kriptografi No No

Resources

Feature SDK Aplikasi Windows diperlukan? Identitas paket diperlukan?
Manajemen sumber daya MRT Core Yes No

Untuk daftar lengkap fitur yang tersedia di aplikasi desktop, lihat Fitur untuk pengembangan aplikasi Windows.

Modernisasi yang dibantu AI

Agen modernisasi GitHub Copilot dapat menganalisis solusi desktop Anda dan menghasilkan permintaan pull yang menambahkan fitur Windows modern atau meningkatkan aplikasi Anda ke versi .NET yang lebih baru. Untuk detailnya, lihat Modernisasi yang dibantu AI.

Baca juga

Langkah berikutnya