2009-03-31 24 views
12

ClickOnce dağıtımını kullanarak dağıtdığım ve sonra makineme yüklenen bir programım var. ,C# dağıtımı yükleme sorunları

PLATFORM VERSION INFO 
    Windows     : 5.1.2600.196608 (Win32NT) 
    Common Language Runtime : 2.0.50727.3053 
    System.Deployment.dll : 2.0.50727.3053 (netfxsp.050727-3000) 
    mscorwks.dll   : 2.0.50727.3053 (netfxsp.050727-3000) 
    dfdll.dll    : 2.0.50727.3053 (netfxsp.050727-3000) 
    dfshim.dll    : 2.0.50727.3053 (netfxsp.050727-3000) 

SOURCES 
    Deployment url   : file:///C:/../MyProg.appref-ms%7C 

ERROR SUMMARY 
    Below is a summary of the errors, details of these errors are listed later in the log. 
    * Activation of C:\..\MyProg.appref-ms| resulted in exception. Following failure messages were detected: 
     + The referenced assembly is not installed on your system. (Exception from HRESULT: 0x800736B3) 

COMPONENT STORE TRANSACTION FAILURE SUMMARY 
    No transaction error was detected. 

WARNINGS 
    There were no warnings during this operation. 

OPERATION PROGRESS STATUS 
    * [3/30/09 2:45:10 PM] : Activation of C:\..\MyProg.appref-ms| has started. 

ERROR DETAILS 
    Following errors were detected during this operation. 
    * [3/30/09 2:45:16 PM] System.Runtime.InteropServices.COMException 
     - The referenced assembly is not installed on your system. (Exception from HRESULT: 0x800736B3) 
     - Source: System.Deployment 
     - Stack trace: 
      at System.Deployment.Internal.Isolation.IStore.GetAssemblyInformation(UInt32 Flags, IDefinitionIdentity DefinitionIdentity, Guid& riid) 
      at System.Deployment.Internal.Isolation.Store.GetAssemblyManifest(UInt32 Flags, IDefinitionIdentity DefinitionIdentity) 
      at System.Deployment.Application.ComponentStore.GetAssemblyManifest(DefinitionIdentity asmId) 
      at System.Deployment.Application.ComponentStore.GetSubscriptionStateInternal(DefinitionIdentity subId) 
      at System.Deployment.Application.SubscriptionStore.GetSubscriptionStateInternal(SubscriptionState subState) 
      at System.Deployment.Application.SubscriptionState.Validate() 
      at System.Deployment.Application.SubscriptionState.get_IsInstalled() 
      at System.Deployment.Application.ApplicationActivator.ProcessOrFollowShortcut(String shortcutFile, String& errorPageUrl, TempFile& deployFile) 
      at System.Deployment.Application.ApplicationActivator.PerformDeploymentActivation(Uri activationUri, Boolean isShortcut, String textualSubId, String deploymentProviderUrlFromExtension, BrowserSettings browserSettings, String& errorPageUrl) 
      at System.Deployment.Application.ApplicationActivator.ActivateDeploymentWorker(Object state) 

COMPONENT STORE TRANSACTION DETAILS 
    No transaction information is available. 

Ben programı kaldırın olamaz, ama (bir iletişim bir saniye açılır ve ben okumadan önce kaybolur) neden göremiyorum: Ben kullanmayı denedim, ve bana aşağıdaki hatayı verdi ve eski sürümü kaldırıncaya kadar uygulamayı yeniden yükleyemiyorum.

Sorun ne olabilir ve bu konuda ne yapabilirim?

Önceki sürümleri Visual Studio 2008 kullanılarak dağıtıldı. Bu sürüm Visual C# Express Edition kullanılarak dağıtıldı. MySQL Connection paketine bir bağımlılık var. Yayınlama sırasında, dizinin yerini ve sürüm numarasını (yinelenen olmayan sürüm numarası) ötesinde hiçbir ayarı özelleştirmedim.

+0

Uygulamanızda bir COM nesnesiyle birlikte çalışma kullanıyor musunuz? COM nesnesini istemci sistemde doğru şekilde yüklediğinizden emin misiniz? COM birlikte çalışma derlemesini dağıtamazsınız, COM nesnesini de dağıtmanız gerekir. – casperOne

+0

Uygulama gayet iyi çalışıyordu. Önceki dağıtımlar ile bunun arasındaki tek fark, daha önce VS2008 kullanıyorum ve şimdi Visual C# Express 2008 kullanıyorum. MySQL için bir eklenti kullanıyorum. – Elie

+0

Bir başlangıç ​​için, Program Ekle/Kaldır paneli çalışmadığı için nasıl kaldırmaya giderim. Bunu yapmanın başka bir yolu var mı? – Elie

cevap

16

Uygulama deponuz bozulabilir. Sen (Tümüne her anda yüklü Tıklama Bir kez uygulamaları kaldırır) Bu tuşa silmeyi deneyebilirsiniz: uygulamanız o hata dışında veya diğer makinelerde 'çalışır' eğer

Bir not olarak
HKEY_CURRENT_USER\Software\Classes\SOFTWARE\Microsoft\Windows\CurrentVersion\Deployment\SideBySide 

, o zaman bu büyük olasılıkla senin olduğunu konu.

+1

Bu sorun, yalnızca bir kullanıcıyı etkiler. Bu tüm Click-once dağıtımlarını etkiler mi? Uygulamamı yalnızca silmekten nasıl emin olabilirim? – Elie

+0

Evet, o zaman sorun muhtemelen budur. Bu düzeltme, o makinedeki tüm deplyomentleri etkileyecektir. Henüz böyle bir adım atmadan bunu düzeltmenin bir yolunu bulamadım; Şu anda bir şeyler denemek için bir geliştirme platformum yok = ( – JasonRShaver

+0

Ben sadece bu çözümü başarıyla kullandım. Bu doğadan birden fazla uygulama varsa bunu yapmaktan nefret ediyorum ... ama sadece bir tane var. – Godeke