İstifa etmeden test ve üretim sunucuları için ClickOnce uygulamalarını dağıtma

Bu makalede, ClickOnce bildirimlerini yeniden imzalamadan veya değiştirmeden birden çok ağ konumundan ClickOnce uygulamalarının dağıtılmalarına olanak tanıyan .NET Framework sürüm 3.5'te sunulan ClickOnce özelliği açıklanmaktadır.

Dekont

Uygulamaların yeni sürümlerini dağıtmak için hala tercih edilen yöntem istifadır. Mümkün olduğunda istifa yöntemini kullanın. Daha fazla bilgi için bkz. Mage.exe (Bildirim Oluşturma ve Düzenleme Aracı).

Üçüncü taraf geliştiriciler ve ISV'ler bu özelliği kabul ederek müşterilerinin uygulamalarını güncelleştirmesini kolaylaştırabilir. Bu özellik aşağıdaki durumlarda kullanılabilir:

  • Bir uygulamayı güncelleştirirken, uygulamanın ilk yüklemesi için değil.

  • Bir bilgisayarda uygulamanın yalnızca bir yapılandırması olduğunda. Örneğin, bir uygulama iki farklı veritabanına işaret etmek üzere yapılandırılmışsa, bu özelliği kullanamazsınız.

DeploymentProvider'i dağıtım bildirimlerinden hariç tutma

.NET Framework 2.0 ve .NET Framework 3.0'da, çevrimdışı kullanılabilirlik için sisteme yüklenen tüm ClickOnce uygulamalarının dağıtım bildiriminde bir deploymentProvider listelemesi gerekir. deploymentProvider genellikle güncelleştirme konumu olarak adlandırılır; ClickOnce'un uygulama güncelleştirmelerini denetlediği konumdur. Bu gereksinim, uygulama yayımcılarının dağıtımlarını imzalama gereksinimiyle birlikte, bir şirketin bir satıcıdan veya başka bir üçüncü taraftan ClickOnce uygulamasını güncelleştirmesini zorlaştırdı. Ayrıca aynı ağdaki birden çok konumdan aynı uygulamanın dağıtılması daha da zorlaşır.

.NET Framework 3.5'te ClickOnce'da yapılan değişikliklerle, üçüncü bir tarafın bir ClickOnce uygulamasını başka bir kuruluşa sağlaması ve ardından uygulamayı kendi ağına dağıtabilmesi mümkündür.

Bu özellikten yararlanmak için ClickOnce uygulamalarının geliştiricilerinin dağıtım bildirimlerinden dışlanması deploymentProvider gerekir. Bu gereksinim, Mage.exe ile dağıtım bildirimleri oluştururken bağımsız değişkeni dışlamanız -providerUrl gerektiği anlamına gelir. Veya MageUI.exe ile dağıtım bildirimleri oluşturuyorsanız, Uygulama Bildirimi sekmesindeki Konumu Başlat metin kutusunun boş bırakıldığından emin olmanız gerekir.

Dekont

.NET Core 3.1 ve .NET 5 veya üzeri için ClickOnce'da, Mage.exe yerine dotnet-mage.exe kullanın. Daha fazla bilgi için bkz . .NET için ClickOnce.

deploymentProvider ve uygulama güncelleştirmeleri

.NET Framework 3.5'den başlayarak, artık hem çevrimiçi hem de çevrimdışı kullanım için bir ClickOnce uygulaması dağıtmak için dağıtım bildiriminizde bir deploymentProvider belirtmeniz gerekmez. Bu değişiklik, dağıtımı kendiniz paketlemeniz ve imzalamanız gereken ancak diğer şirketlerin uygulamayı ağları üzerinden dağıtmasına izin vermeniz gereken senaryoyu destekler.

Unutmamanız gereken önemli nokta, öğesini deploymentProvider dışlayan uygulamaların, etiketi içeren bir güncelleştirmeyi yeniden göndermeden güncelleştirmeler sırasında yükleme konumlarını değiştiremeyecekleridir deploymentProvider .

Bu noktayı netleştirmek için iki örnek aşağıda verilmiştir. İlk örnekte, etiketi olmayan deploymentProvider bir ClickOnce uygulaması yayımlarsınız ve kullanıcılardan uygulamasını uygulamasından http://www.adatum.com/MyApplication/yüklemelerini istersiniz. Uygulamanın bir sonraki güncelleştirmesini 'den http://subdomain.adatum.com/MyApplication/yayımlamak istediğinize karar verirseniz, içinde bulunan http://www.adatum.com/MyApplication/dağıtım bildiriminde bunu imzalamanın hiçbir yolu yoktur. İki işlemden birini yapabilirsiniz:

  • Kullanıcılarınıza önceki sürümü kaldırmalarını ve yeni sürümü yeni konumdan yüklemelerini söyleyin.

  • öğesini http://www.adatum.com/MyApplication/ işaret http://www.adatum.com/MyApplication/eden bir deploymentProvider güncelleştirme ekleyin. Ardından, daha sonra deploymentProvider öğesini işaret eden http://subdomain.adatum.com/MyApplication/başka bir güncelleştirme yayınlayın.

    İkinci örnekte, öğesini belirten bir ClickOnce uygulaması yayımlarsınız deploymentProviderve ardından uygulamayı kaldırmaya karar verirsiniz. olmayan deploymentProvider yeni sürüm istemcilere indirildikten sonra, uygulamanızın deploymentProvider geri yüklenmiş bir sürümünü serbest bırakana kadar güncelleştirmeler için kullanılan yolu yeniden yönlendiremezsiniz. İlk örnekte olduğu gibi, deploymentProvider başlangıçta yeni konumunuza değil, geçerli güncelleştirme konumuna işaret etmelidir. Bu durumda, öğesine başvuran http://subdomain.adatum.com/MyApplication/bir deploymentProvider eklemeye çalışırsanız sonraki güncelleştirme başarısız olur.

Dağıtım oluşturma

Farklı ağ konumlarından dağıtılabilir dağıtımlar oluşturma konusunda adım adım yönergeler için bkz . İzlenecek yol: Yeniden imzalama gerektirmeyen ve marka bilgilerini koruyan bir ClickOnce uygulamasını el ile dağıtma.