ClickOnce, Uygulama Güncelleştirmelerini Nasıl Gerçekleştirir
ClickOnce, uygulama dosyalarını güncelleştirmeye karar vermek için uygulamanın dağıtım bildiriminde belirtilen dosya sürüm numarasını kullanır. Güncelleştirme başladıktan sonra, ClickOnce uygulama dosyalarının gereksiz yere yüklenmesini önlemek için file patching adında bir teknik kullanır.
File Patching (Dosya Yamalama)
Bir uygulamayı güncelleştirdiğinizde, ClickOnce dosyalar değişmedikçe uygulamanın yeni sürümü için tüm dosyaları karşıdan yüklemez. Bunun yerine, mevcut uygulamanın uygulama bildiriminde belirtilen dosyaların karma imzalarıyla yeni sürümün bildirimindeki imzaları karşılaştırır. Bir dosyanın imzası farklıysa, ClickOnce yeni sürümü karşıdan yükler. İmzalar eşleşirse, dosya iki sürüm için de aynı kalır. Bu durumda, ClickOnce varolan dosyayı kopyalar ve uygulamasının yeni sürümünde kullanır. Bu yaklaşım sayesinde, ClickOnce bir iki dosyanın değişmesi durumunda bile tüm uygulamayı karşıdan yüklemek zorunda kalmaz.
Dosya yamalama, DownloadFileGroup ve DownloadFileGroupAsync yöntemlerini kullanarak isteğe bağlı olarak karşıdan yüklenen derlemeler için de çalışır.
Uygulamanızı derlemek için Visual Studio kullanırsanız, tüm projeyi yeniden yapılandırırmanız durumunda Visual Studio tüm dosyalar için yeni karma imzaları oluşturacaktır. Bu durumda, sadece birkaç derleme değişmesine rağmen tüm derlemeler istemciye karşıdan yüklenecek.
Dosya yamalama veri dizininde depolanan ve veri olarak işaretlenen dosyalar için çalışmaz. Bunlar dosyanın karma imzasına bakılmaksızın karşıdan yüklenir. Veri dizini üzerine daha fazla bilgi için, bkz. ClickOnce Uygulamalarında Yerel ve Uzak Veriye Erişim.