2011-08-18 12 views
5

Outlook eklentisini ClickOnce ile dağıtmaya çalışıyorum. Güncelleştirme seçeneklerini ayarlarken, proje için Outlook eklentisi için daha az seçenek bulunduğunu fark ettim. Örneğin, gerekli minimum sürümü belirtemiyorum. Neden? Ayrıca, ben istiyorum:Outlook eklentisi ClickOnce güncelleştirme ayarları

  1. o bile bir güncelleme istiyorsa (gerekli değilse) kullanıcı sormak manuel güncelleştirme
  2. etkinleştirmek için. Ben System.Deployment.Application ve CheckForDetailedUpdate() işlevi ancak kullanarak çalıştı

1) güncelleme yüklemeden sorunlar var başarılı olsa: benim eklenti yeniden başlatırsanız eski sürüm yoksa o, Outlook kaybolur Outlook'ta takılıp kalır (ve garip davranır), ancak UNC yolu üzerinden yapılan güncellemeler güncellemenin başarıyla yapıldığını gösterir. Düzenli

2) Mage veya MageUI ile eklenen özel seçeneklerle kendi içinde çalışır yayımlamak, ancak eklenti bir kullanıcı sormadan güncellemek gibi görünüyor. Googling biraz insanların tersini yapmaya çalıştıklarını gösteriyor, bu yüzden neden varsayılan olarak güncellemeyi istemediğine şaşkınım.

Visual Studio'dan MageUI ile oluşturulan bildirimleri düzenlemeyi denedim, ancak uygulama bildirimi için geçersiz XML üretiyor (?! - "dependAssembly" düğümünde "assemblyIdentity" düğümünü özlüyor), ve özgün düğümden eksik düğümleri eklediğimde VS (ve daha sonra güncelleştirin ve imzalayın), yükleme derleme karmalarının geçersiz olduğundan şikayet ediyor.

Outlook eklentisini bu gereksinimlerle nasıl dağıtabilirim?

cevap

6

vsto uygulamaları (Ofis Eklentiler) sadece ClickOnce belirli bitleri destekler. Kod eklemeyi ve programlı güncellemeleri yapmayı deneyebilirsiniz, ancak Microsoft'taki ClickOnce lideri gerçekten kullanılmayacağını ve parçalarının işe yaramayacağını belirtti. (Hayır, tam olarak hangi parçalarla ilgili ayrıntı yok - & numaralı bir hatayı denemelisiniz).

Ayrıca yolu VSTO dağıtım çalışmaları ve ishal bu olduğuna dikkat: Outlook Outlook ile kopyalar gölge konuma dll (ler) ve yükler olduğunu VSTO uygulamasını kontrol eder ve. Vsto uygulamasını güncellediğinizde, tıklatmada bir kez önbellekte günceller, ancak görünümde değil. Görünümü kapatıp yeniden açtığınızda, yeni sürümü bulur, gölge konumuna kopyalar ve yükler. Karşılıklı olarak kendini yeniden başlatamaz ve bir şey yapamazsın. Kullanıcı Outlook'u yeniden başlatmalıdır.

Bu, Office uygulamasını başlatırken güncelleştirmelerin gerçekleştirilmesinin nedenlerinden biridir. Yeni sürümü arar, gerekirse güncelleştirir ve Outlook'a yükler ve kullanır.

sizin eklentiyi güncelleyecektir formları uygulaması istediğini gerçekleştirmek için başka bir yol, bir pencere yazmaktır, Having. Temel olarak tıklatma uygulaması ile Clickto'yu çağırmak haricinde ilk kez hiçbir şey göstermeyen bir winform uygulaması açın (process.start, arkadaşınızdır). Sonra görünüm eklentisi winforms uygulamasının bir güncelleme olup olmadığını görebilir ve eğer varsa, formlar uygulamasının bir güncellemesini isteyebilir ve ardından ofis eklentisini kaldırıp yeniden yükleyebilir veya güncelleyebilirsiniz. .

+1

Şerit parçalarının biraz problemli olduğu gözüküyor. Ve sadece onlar değil. Cevabınız için teşekkür ederim, en azından, yapılması gerekmeyen şeyleri yapmaya çalışmaktan daha fazla zaman kaybetmemem gerektiğini biliyorum. – Damir

+0

@RobinDotNet Bu cevap bugün hala geçerli mi, yaklaşık 5 yıl mı? Bir Excel eklentisi geliştirdim (FTP ile yayınlanan ve HTTP ile yüklenen bir VSTO tabanlı uygulama), Excel'in başlangıçtaki otomatik güncelleme işlemi iyi çalışıyor.Bununla birlikte, kullanıcının güncellemeleri kontrol etmesine ve eklentinin arayüzünde basit bir buton tıklamasıyla uygulamasına izin veren bir yöntem arıyordum. Bunu başarmak hala mümkün değil mi? Teşekkür ederim. –