安装Github for Windows时出现System.Runtime.InteropServices.COMException

Dan*_*007 11 github-for-windows

我正在尝试安装GitHub for Windows,我收到以下错误消息:

PLATFORM VERSION INFO
    Windows             : 6.0.6002.131072 (Win32NT)
    Common Language Runtime     : 4.0.30319.18052
    System.Deployment.dll       : 4.0.30319.17929 built by: FX45RTMREL
    clr.dll             : 4.0.30319.18052 built by: FX45RTMGDR
    dfdll.dll           : 4.0.30319.17929 built by: FX45RTMREL
    dfshim.dll          : 4.0.41209.0 (Main.041209-0000)

SOURCES
    Deployment url          : http://github-windows.s3.amazonaws.com/GitHub.application

ERROR SUMMARY
    Below is a summary of the errors, details of these errors are listed later in the log.
    * Activation of http://github-windows.s3.amazonaws.com/GitHub.application 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
    * [04/12/2013 08:29:27] : Activation of http://github-windows.s3.amazonaws.com/GitHub.application has started.

ERROR DETAILS
    Following errors were detected during this operation.
    * [04/12/2013 08:29:27] 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.SubscriptionStore.CheckAndReferenceApplication(SubscriptionState subState, DefinitionAppId appId, Int64 transactionId)
            at System.Deployment.Application.DownloadManager.DownloadDeploymentManifestDirectBypass(SubscriptionStore subStore, Uri& sourceUri, TempFile& tempFile, SubscriptionState& subState, IDownloadNotification notification, DownloadOptions options, ServerInformation& serverInformation)
            at System.Deployment.Application.DownloadManager.DownloadDeploymentManifestBypass(SubscriptionStore subStore, Uri& sourceUri, TempFile& tempFile, SubscriptionState& subState, IDownloadNotification notification, DownloadOptions options)
            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.
Run Code Online (Sandbox Code Playgroud)

有谁知道是什么原因造成的?

Dan*_*007 23

这里有两个解决方案供您试用,第二个手动删除对我有用.(还要确保你使用管理员权限来安装他的安装程序.

它可能是ClickOnce应用程序缓存的问题.您可以尝试以下操作来清除缓存

  1. 按住Windows键并键入R.
  2. rundll32 %SystemRoot%\system32\dfshim.dll CleanOnlineAppCache运行对话框中键入并按下Enter.

然后尝试安装该应用程序.

如果这不起作用,则有一种更加手动的方法来确保清除缓存 - 您可以删除ClickOnce Application文件夹.

  • Windows Vista或更高,这将是%LocalAppData%\Apps\2.0目录.
  • Windows XP这将是%USERPROFILE%\Local Settings\Apps\2.0目录.

请注意,如果您使用的是非英语版本的Windows,则此路径可能使用其他语言.


小智 9

删除%LocalAppData%\ Apps\2.0文件夹工作正常

  • 小心这将删除*所有* clickonce应用程序,而不仅仅是有问题的应用程序 (2认同)