4.3 KiB
hOLOlu Download Manager (hDM) Dağıtım ve Kurulum Rehberi
Bu belge, hDM uygulamasının son kullanıcıya dağıtımı (Deployment) ve Advanced Installer gibi araçlarla kurulum (Setup) paketlerinin hazırlanması konularında izlenmesi gereken yolları ve en iyi pratikleri içermektedir.
1. Dağıtım Stratejileri (Deployment Strategies)
.NET 8 ile geliştirilen WPF/Windows Masaüstü uygulamalarını yayınlarken (publish) genel olarak iki farklı strateji tercih edilir:
A. Framework-Dependent (Çerçeveye Bağımlı) Dağıtım
Uygulamanın çalışması için kullanıcının bilgisayarında .NET Desktop Runtime'ın kurulu olmasını gerektiren yöntemdir.
- Avantajları: Derlenmiş uygulama boyutu çok küçüktür (Yaklaşık 5-15 MB). Güncellemeler hızlıdır.
- Dezavantajları: Kullanıcıda doğru .NET sürümü yoksa uygulama açılmaz ve kullanıcıyı indirme sayfasına yönlendirir.
- Yayınlama Komutu:
dotnet publish src/DownloadManager.WPF/DownloadManager.WPF.csproj -c Release -r win-x64 --self-contained false
B. Self-Contained (Kendi İçinde Barındıran) Dağıtım
.NET kütüphanelerinin ve uygulamanın ihtiyaç duyduğu tüm çalışma zamanı (runtime) dosyalarının .exe içerisine veya yanına gömüldüğü yöntemdir.
- Avantajları: Kullanıcının bilgisayarında .NET kurulu olmasına gerek yoktur. Hata riski sıfıra yakındır, "tıkla ve çalıştır" mantığıyla çalışır.
- Dezavantajları: Dosya boyutu çok yüksektir (Yaklaşık 150-250 MB arası).
- Yayınlama Komutu (Tek Dosya - Single File):
dotnet publish src/DownloadManager.WPF/DownloadManager.WPF.csproj -c Release -r win-x64 --self-contained true -p:PublishSingleFile=true -p:IncludeNativeLibrariesForSelfExtract=true
C. Boyutu Küçültülmüş Self-Contained (Trimming)
Eğer dosya boyutu (210 MB) sizin için sorunsa, kullanılmayan .NET kodlarını silen PublishTrimmed bayrağını kullanabilirsiniz. Bu, boyutu 80-100 MB arasına düşürebilir ancak Reflection kullanan paketlerde (JSON dönüştürücüler vb.) çalışma zamanı hatalarına yol açabileceğinden kapsamlı test gerektirir.
dotnet publish src/DownloadManager.WPF/DownloadManager.WPF.csproj -c Release -r win-x64 --self-contained true -p:PublishSingleFile=true -p:PublishTrimmed=true
2. Advanced Installer ile Kurulum Önerileri
Eğer Framework-Dependent (A stratejisi) yayınlama yapıyor ve kurulum dosyasının boyutunu küçük tutmak istiyorsanız, Advanced Installer içerisinde doğru "Prerequisites" (Önkoşullar) ayarını yapmanız hayati önem taşır.
"You must install .NET Desktop Runtime" Hatasının Çözümü
Advanced Installer'da sadece ".NET Runtime" eklerseniz WPF arayüzü çizilemez. Kesinlikle "Desktop" sürümü eklenmelidir.
- Advanced Installer projenizi (
hdm_kur.aip) açın. - Sol menüden Prerequisites sekmesine tıklayın.
- Listeden eklediğiniz yanlış veya eksik .NET gereksinimlerini silin (Örn:
.NET Runtime 8.0.xveyaASP.NET Core Runtime). - Packages kısmından şu paketi bulup ekleyin:
- 👉
.NET Desktop Runtime 8.0.x (x64)
- 👉
- Kurulum seçeneklerinde (Setup Files), bu runtime paketinin kurulum dosyasına gömülmesini (Include in setup) veya internetten indirilmesini (Download from URL) seçebilirsiniz. İnternetten indirme seçeneği,
.msi/.exedosyanızın boyutunu çok küçük (15 MB altı) tutmanızı sağlar.
Ek Tavsiyeler
- Kısayol ve Simgeler: Advanced Installer'da masaüstü kısayolu oluştururken,
hDM.exedosyasını seçtiğinizde simge otomatik olarakDown_nb-02.icoalgılanacaktır. - Tarayıcı Eklentisi (Browser Bridge):
DownloadManager.BrowserBridge.exedosyasını dahDM.exeile aynı klasöre kurduğunuzdan emin olun. Ayrıca Advanced Installer'ın Registry bölümüne girip, eklentinin çalışması için gerekenregister_bridge.regiçeriğini kurulum sırasında otomatik yazılacak şekilde ekleyin. - Mimariler: Uygulamanızı
x64(64-bit) olarak yayınlıyorsanız, Advanced Installer projesinin Install Parameters kısmından "Package Type" ayarını64-bit packageolarak seçmeyi unutmayın. Aksi takdirde "Program Files (x86)" klasörüne kurulmaya çalışır.