Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Modern Windows özelliklerinden yararlanmak için WPF, Windows Forms veya Win32 uygulamanızı yeniden yazmanız gerekmez. Windows Uygulama SDK'sı ve daha geniş Windows platformu, kendi hızınızda artımlı olarak benimseyebileceğiniz modüler özellikler sunar.
Bu makalede Windows Çalışma Zamanı (WinRT) API'lerini çağırma, Windows Uygulama SDK'sı ekleme ve MSIX paketlemesini benimseme gibi üç bağımsız modernizasyon yaklaşımı tanıtılarak uygulamanızın çerçevesine göre hangi özellikleri ekleyeceğiniz ve nereden başlayacağınıza karar verilmektedir.
WinUI 3'e UI çerçevesi geçişi
Amacınız uygulamanızın kullanıcı arabirimi katmanını tamamen modernleştirmekse, Windows masaüstü uygulamaları için yerel kullanıcı arabirimi çerçevesi olan WinUI 3'e geçiş yapmanızı öneririz. Başlamak için bkz. İlk WinUI 3 uygulamanızı oluşturma .
Kullanıcı arabirimi katmanınızı değiştirmeden mevcut uygulama çerçevenize (WPF, Windows Forms veya C++ Win32) Windows özellikleri eklemek istiyorsanız, bu makalede açıklanan modernleştirme yaklaşımlarından birini kullanın.
Note
Bu makale, mevcut masaüstü uygulamanıza modern Windows özellikleri eklemeyi kapsar. .NET araç zincirinizi veya C++ derleyicinizi modernleştirmek istiyorsanız GitHub Copilot yükseltme veya C++ taşıma ve yükseltme Microsoft kılavuzuna bakın.
Modernleştirme yaklaşımları
Üç modernleştirme yaklaşımı birbirinden bağımsızdır. Aynı uygulamada bir, iki veya üçünü de kullanabilirsiniz.
| Approach | Size ne verir? | Paketleme gerekiyor mu? |
|---|---|---|
| WinRT API'lerini | Herhangi bir .NET veya C++ masaüstü uygulamasından Windows platform API'lerine (bildirimler, Bluetooth, sözleşmeyi paylaşma, algılayıcılar ve daha fazlası) doğrudan erişim | Hayır, çoğu API için |
| Windows Uygulama SDK'sı | Modern Windows geliştirme özelliklerini (pencereleme, metin işleme, kaynaklar ve daha fazlası) mevcut uygulamalara getiren bir NuGet paketi | Hayır, çoğu özellik için |
| MSIX paketleme | Temiz kaldırma, otomatik güncelleştirmeler ve paket kimliğine sahip modern bir yükleyici; kaynak kodunda değişiklik gerektirmez | Yok — paketleme yaklaşımıdır |
Tavsiye
Belirli bir Windows platformu API'sini çağırmak istiyorsanız WinRT API'leri ile başlayın. Özelliklerine ihtiyacınız olduğunda Windows Uygulama SDK'sı ekleyin (DWriteCore, MRT Core, pencereleme). Paket kimliğine ihtiyacınız olduğunda veya yükleyicinizi modernleştirmek istediğinizde MSIX paketlemesi ekleyin.
WinRT API'leri
Windows Çalışma Zamanı (WinRT) API'leri uygulama bildirimleri, paylaşım sözleşmesi, Bluetooth ve daha fazlası gibi Windows platform özelliklerini kullanıma sunar. Bu API'leri doğrudan WPF, Windows Forms ve C++ Win32 uygulamalarından çağırabilirsiniz.
Masaüstü uygulamalarında Windows Çalışma Zamanı API'lerini çağırma
Windows Uygulama SDK'sı
Windows Uygulama SDK'sı, mevcut projenize eklediğiniz bir NuGet paketi olarak modern Windows geliştirme özellikleri sunar. UI çerçevenizi değiştirmeniz gerekmez.
MSIX paketleme ve paket kimliği
MSIX paketleme, mevcut yükleyicinizin yerini alır ve uygulama paketi kimliğinizi verir. Arka plan görevleri, başlangıç görevleri, dosya ilişkilendirmeleri ve Windows AI Foundry gibi bazı Windows özellikleri, çalışma zamanında paket kimliği gerektirir. Mevcut yükleyicinizi kullanmaya devam etmek istiyorsanız, tam MSIX paketlemesi olmadan da paket kimliği verebilirsiniz — bu yaklaşım bazen dış konumla paketleme veya seyrek paket olarak adlandırılır.
- Paketlemeye genel bakış
- Paket kimliği gerektiren özellikler
- Paketlenmemiş bir uygulamaya kimlik verme
- Kullanma uzantılarını kullanarak masaüstü uygulamanızı Windows ile tümleştirme
- Tek projeli MSIX kullanarak uygulamanızı paketleme
Çerçeveye özgü başlangıç noktaları
Aşağıdaki tabloda, her masaüstü uygulaması çerçevesi için önerilen başlangıç noktası listelenmektedir.
| Çerçeveniz | Önerilen başlangıç noktası |
|---|---|
| WPF | Mevcut bir projede Windows Uygulama SDK'sını kullanma |
| Windows Forms | Mevcut bir projede Windows Uygulama SDK'sını kullanma |
| C++ Win32 | Mevcut bir projede Windows Uygulama SDK'sını kullanma |
| C++/WinRT | Masaüstü uygulamaları için WinRT API'leri |
Masaüstü uygulamasını modernleştirme için özellik kataloğu
Aşağıdaki tablolarda yaygın modernleştirme özellikleri ve her birinin Windows Uygulama SDK'sı veya paket kimliği gerekip gerekmediği listelenmiştir.
AI
| Özelliği | Windows Uygulama SDK'sı gerekli? | Paket kimliği gerekli mi? |
|---|---|---|
| Windows AI Foundry | No | Yes |
Kullanıcı arabirimi ve metin
| Özelliği | Windows Uygulama SDK'sı gerekli? | Paket kimliği gerekli mi? |
|---|---|---|
| Bir masaüstü uygulamasında WinUI 3 bileşenleri | Yes | No |
| XAML Adaları ile WinUI denetimlerini barındırma | Yes | No |
| DWriteCore ile metin işleme | Yes | No |
| Win32 uygulamalarına Mica veya Akrilik uygulama | No | No |
| Yuvarlatılmış köşeleri uygula | No | No |
| Windows temaları uygulama | No | No |
Uygulama yaşam döngüsü
| Özelliği | Windows Uygulama SDK'sı gerekli? | Paket kimliği gerekli mi? |
|---|---|---|
| Arka plan görevleri (Windows Uygulama SDK'sı) | Yes | Yes |
| Başlangıç görevleri | No | Yes |
Windows ile tümleştirme
| Özelliği | Windows Uygulama SDK'sı gerekli? | Paket kimliği gerekli mi? |
|---|---|---|
| Paylaşım sayfası entegrasyonu | No | No |
| Cihazlar Arası Kişiler API'si | No | No |
| Dosya ilişkilendirmeleri | No | Yes |
| Windows Pencere Öğeleri | No | Yes |
Security
| Özelliği | Windows Uygulama SDK'sı gerekli? | Paket kimliği gerekli mi? |
|---|---|---|
| Kimlik Doğrulama Kasası | No | No |
| OAuth 2.0 | No | No |
| parmak izi biyometri |
No | No |
| akıllı kartlar | No | No |
| Şifreleme | No | No |
Resources
| Özelliği | Windows Uygulama SDK'sı gerekli? | Paket kimliği gerekli mi? |
|---|---|---|
| MRT Core kaynak yönetimi | Yes | No |
Masaüstü uygulamalarında kullanılabilen platform özelliklerinin tam listesi için bkz. uygulama platformuna genel bakış Windows.
Yapay zeka destekli modernleştirme
GitHub Copilot yükseltmesi, desteklenen .NET masaüstü projelerini değerlendirebilir ve yükseltebilir. Yapay zeka destekli Windows özellik benimseme ve kullanıcı arabirimi geçişi için bkz. Yapay zeka destekli modernleştirme.
İlgili içerik
- Masaüstü uygulamalarında Windows Çalışma Zamanı API'lerini çağırma
- XAML Adaları ile WinUI denetimlerini barındırma
- Mevcut bir projede Windows Uygulama SDK'sını kullanma
- Paketlemeye genel bakış
- Geçiş yolunuzu seçin
- Geçiş terminolojisi
- .NET uygulamasından birlikte çalışma API'lerini çağır
- WinUI ve Win32 birlikte çalışma ile C# .NET uygulaması oluşturma
Windows developer