使用ClickOnce部署时无法加载运行时错误

时间:2011-06-30 04:55:07

标签: .net deployment clickonce

我已经使用面向.NET 2.0的Visual Studio 2010创建了一个Windows Forms应用程序。我正在使用ClickOnce部署它,并且已在除一次以外的所有计算机上成功安装。我们的大多数机器都是Windows XP 64,除了这台特定的机器外,应用程序已安装在所有机器上。

我已经检查过这台机器有.NET 2.0,3.5 SP1& 4.0。然而部署失败并出现以下错误:

  

PLATFORM VERSION INFO

     

Windows:5.2.3790.131072   (Win32NT)

     

公共语言运行时:   4.0.30319.1

     

System.Deployment.dll:4.0.30319.1   (RTMRel.030319-0100)

     

clr.dll:4.0.30319.1   (RTMRel.030319-0100)

     

dfdll.dll:4.0.30319.1   (RTMRel.030319-0100)

     

dfshim.dll:4.0.31106.0   (Main.031106-0000)

     

SOURCES

     

部署网址:   文件:///WrpApp/WRPDatatEntry.application

     

部署提供商网址:   文件:///WrpApp/WRPDatatEntry.application

     

申请网址:   文件:///WrpApp/Application%20Files/WRPDatatEntry_0_2_1_4/WRPDatatEntry.exe.manifest

     

恒等式

     

部署身份:   WRPDatatEntry.application,   版本= 0.2.1.4,文化=中立,   公钥= dcbea49d7f78e494,   ProcessorArchitecture用于= 86

     

应用程序标识:   WRPDatatEntry.exe,版本= 0.2.1.4,   文化=中性,   公钥= dcbea49d7f78e494,   processorArchitecture = x86,type = win32

     

申请摘要

     
      
  • 可安装的应用程序。
  •   
     

错误摘要

     

以下是错误摘要,   列出了这些错误的详细信息   稍后在日志中。

     
      
  • 激活   \\ WrpApp \ WRPDatatEntry.application   导致例外。以下   检测到失败消息:

         
        
    • 无法加载运行时。   (HRESULT异常:0x80131700)
    •   
  •   
     

组件商店交易失败   发明内容

     

未检测到任何交易错误。

     

警告

     

此期间没有任何警告   操作

     

操作进度状态

     
      
  • [6/30/2011 9:53:00 AM]:激活   的   \\ WrpApp \ WRPDatatEntry.application   已经开始了。

  •   
  • [6/30/2011 9:53:00 AM]:处理   部署清单有   顺利完成。

  •   
  • [6/30/2011 9:53:00 AM]:   应用程序的安装有   启动。

  •   
  • [6/30/2011 9:53:00 AM]:处理   应用程序清单有   顺利完成。

  •   
  • [6/30/2011 9:53:02 AM]:找到了   兼容的运行时版本2.0.50727。

  •   
     

错误细节

     

期间检测到以下错误   这个操作。

     
      
  • [6/30/2011 9:53:02 AM]   System.Runtime.InteropServices.COMException

         
        
    • 无法加载运行时。 (HRESULT异常:0x80131700)

    •   
    • 来源:System.Deployment

    •   
    • 堆栈跟踪:

           

      在   System.Deployment.Application.NativeMethods.IClrMetaHostPolicy.GetRequestedRuntime(MetaHostPolicyFlags   policyFlags,String binaryPath,   IStream configStream,StringBuilder   版本,Int32& versionLength,   StringBuilder imageVersion,Int32&   imageVersionLength,Int32&   pdwConfigFlags,Guid interfaceId)

           

      在   System.Deployment.Application.NativeMethods.GetAssemblyCacheInterface(字符串   CLRVersionString,布尔值   FetchRuntimeHost,CCorRuntimeHost&   RuntimeHost)

           

      在   System.Deployment.Application.PlatformDetector.VerifyPlatformDependencies(AssemblyManifest   appManifest,AssemblyManifest   deployManifest,String tempDir)

           

      在   System.Deployment.Application.ApplicationActivator.DownloadApplication(SubscriptionState   subState,ActivationDescription   actDesc,Int64 transactionId,   TempDirectory&安培; downloadTemp)

           

      在   System.Deployment.Application.ApplicationActivator.InstallApplication(SubscriptionState&安培;   subState,ActivationDescription   actDesc)

           

      在   System.Deployment.Application.ApplicationActivator.PerformDeploymentActivation(URI   activationUri,Boolean isShortcut,   String textualSubId,String   deploymentProviderUrlFromExtension,   BrowserSettings browserSettings,   字符串和放大器; errorPageUrl)

           

      在   System.Deployment.Application.ApplicationActivator.ActivateDeploymentWorker(对象   状态)

    •   
  •   
     

组件商店交易细节

     

没有交易信息   可用。

我该如何处理?

2 个答案:

答案 0 :(得分:1)

如果您使用错误代码0x80131700来搜索此错误,则会有很多内容。

解决方案似乎是下载并安装最新的.NET Framework。我知道你已经提到你已经做到了。步骤#2应该卸载您可以卸载的所有.NET框架和服务包,重新启动PC(如果它不强制您这样做),然后重新安装所有框架。

答案 1 :(得分:0)

看起来像COM例外。您的应用程序是否使用Office主Interop程序集,如果是这样,您是否将这些程序包括在部署中作为先决条件?如果它不是Office,您是否有其他类型的COM组件未正确安装?