【问题标题】:VS2017 installer - the package manifest failed signature validationVS2017 安装程序 - 包清单签名验证失败
【发布时间】:2017-10-24 21:34:01
【问题描述】:

我安装了 VS2015,之前在这台机器上安装了 VS2017。在 VS2017 上添加扩展似乎完全破坏了我的安装,所以我想接下来要做的就是重新安装 VS2017。

哦,我多么希望我没有。

安装程序失败并显示“包清单签名验证失败”我尝试了以下步骤:

运行安装程序时,我会看到:

在选择要安装的产品之前。

当尝试在https://www.hanselman.com/blog/HowToMakeAnOfflineInstallerForVS2017.aspx 执行“离线安装程序”步骤时

在我跑的那一步:

vs_community.exe --layout e:\vs2017offline --lang en-US

我(最终)看到了一个控制台窗口:

安装日志文件。

dd_setup_*.log:

[0df4:000c][2017-05-24T08:37:22] Setup Engine v1.10.101, Microsoft Windows NT 10.0.10586.0
[0df4:000c][2017-05-24T08:37:22] Command line: "C:\Program Files (x86)\Microsoft Visual Studio\Installer\resources\app\ServiceHub\Hosts\Microsoft.ServiceHub.Host.CLR\vs_installerservice.exe" desktopClr$C94B8CFE-E3FD-4BAF-A941-2866DBB566FE 18a10ed3a2b52a1e605bf4679dbe1364
[0df4:000c][2017-05-24T08:37:24] ManifestVerifier verification: Exception has been thrown by the target of an invocation. Stack:    at System.RuntimeMethodHandle.InvokeMethod(Object target, Object[] arguments, Signature sig, Boolean constructor)
   at System.Reflection.RuntimeConstructorInfo.Invoke(BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture)
   at System.Security.Cryptography.CryptoConfig.CreateFromName(String name, Object[] args)
   at Microsoft.VisualStudio.Setup.Security.ManifestMethods.CalculateHashValue(String dataBlob, String hashMethod)
   at Microsoft.VisualStudio.Setup.Security.ManifestVerifier.CheckSign(ManifestDoc manifestDoc, Signature signature, String layoutCertPath)
   at Microsoft.VisualStudio.Setup.Security.ManifestVerifier.Verify(FileStream fileStream, String path, String layoutCertPath)
[0df4:000c][2017-05-24T08:37:24] ManifestVerifier Result: Exception

dd_client_*.log

2017-05-24T08:37:01 : Verbose : Visual Studio Installer (1.10.30637.0 : update2) ["C:\\Program Files (x86)\\Microsoft Visual Studio\\Installer\\vs_installershell.exe","/finalizeInstall","install","--in","C:\\ProgramData\\Microsoft\\VisualStudio\\Packages\\_bootstrapper\\vs_setup_bootstrapper.json","--locale","en-US","--activityId","78239d59-bc71-44e1-b8c6-e67d586fbba5","--campaign","1601306246.1493817089"]
2017-05-24T08:37:02 : Verbose : Creating VS Telemetry Survey
2017-05-24T08:37:03 : Verbose : Received the application ready notification
2017-05-24T08:37:03 : Verbose : Starting ServiceHub Experimentation client.
2017-05-24T08:37:09 : Verbose : Calling ExperimentationProviderService.Initialize()
2017-05-24T08:37:09 : Verbose : ServiceHub Experimentation client started.
2017-05-24T08:37:09 : Verbose : ExperimentsIpcRpcService listening to ipc channel: ExperimentsProxy
2017-05-24T08:37:09 : Verbose : Experiments Ipc Service started.
2017-05-24T08:37:09 : Verbose : Telemetry Session ID: 2b7ca8c1-aa76-4fe1-81eb-36936b1e32d7
2017-05-24T08:37:09 : Verbose : Connected to Hub Controller's client watch 'net.pipe://1140e3f8da9d1a14f42763f0648c14f4'
2017-05-24T08:37:09 : Verbose : ServiceHubExperimentationClient.setSharedProperty(name, value) called,
 [name: VS.ABExp.Flights] [value: lazytoolboxinit;fwlargebuffer;refactoring;spmoretempsbtn1;c32bca7948ab42c;tn-none-15b;vswlaunchbcf]
2017-05-24T08:37:10 : Verbose : Calling ExperimentationProviderService.IsFlightEnabledAsync(flightId). [flightId: VSWLaunchBanner]
2017-05-24T08:37:10 : Verbose : ServiceHubExperimentationClient.postEvent(name, properties) called.
 [name: VS/ABExp/FlightRequest] [properties: {"VS.ABExp.Flight":"vswlaunchbanner","VS.ABExp.Result":"False"}]
2017-05-24T08:37:10 : Verbose : Resolved ExperimentationProviderService.IsFlightEnabledAsync(flightId).
 [flightId: VSWLaunchBanner] [result: false]
2017-05-24T08:37:11 : Verbose : Getting installed product summaries. [installerId: SetupEngine]
2017-05-24T08:37:11 : Verbose : Starting the installed products provider service.
2017-05-24T08:37:11 : Verbose : Starting the products provider service.
2017-05-24T08:37:11 : Verbose : Getting product summaries. [installerId: SetupEngine]
2017-05-24T08:37:11 : Verbose : Starting the installer service.
2017-05-24T08:37:11 : Verbose : Calling SetupEngine.Installer.Initialize. [locale: en-US]
2017-05-24T08:37:11 : Verbose : SetupEngine.Installer.Initialize succeeded. [locale: en-US]
2017-05-24T08:37:11 : Verbose : Started the installer service.
2017-05-24T08:37:11 : Verbose : Calling SetupEngine.Installer.IsElevated.
2017-05-24T08:37:11 : Verbose : SetupEngine.Installer.IsElevated succeeded.
2017-05-24T08:37:22 : Verbose : Started the products provider service.
2017-05-24T08:37:22 : Verbose : Started the installed products provider service.
2017-05-24T08:37:22 : Verbose : Getting product. [installerId: SetupEngine, productId: Microsoft.VisualStudio.Product.Professional].
2017-05-24T08:37:24 : Error : Failed to get product. [installerId: SetupEngine, productId: Microsoft.VisualStudio.Product.Professional, error: The installer manifest failed signature validation. at    at Microsoft.VisualStudio.Setup.Engine.Load(String path, Boolean skipVerify)
   at Microsoft.VisualStudio.Setup.Engine.Load(Uri manifestUri, Uri channelUri, Uri installChannelUri, CancellationToken token, Boolean skipVerify)
   at Microsoft.VisualStudio.Setup.Engine.Load(ChannelNode`1 channelProduct, CancellationToken token, Boolean skipVerify)
   at Microsoft.VisualStudio.Setup.ProductInstaller.CreateEngine(IEngineFactory engineFactory, IServiceProvider engineServiceProvider, IProgressReporter progressReporter, IMessageBus messageBus, IRestartManager restartManager, String instanceId, ChannelNode`1 channelProductSummary)
   at Microsoft.VisualStudio.Setup.ProductInstaller.GetEngine()
   at Microsoft.VisualStudio.Setup.ProductInstaller..ctor(ILogger logger, String language, LocalizedResourceFallback languageFallback, IEngineFactory engineFactory, IRestartManager restartManager, IInstance instance, ChannelNode`1 channelProductSummary, VersionBundle latestVersion, IServiceProvider setupServiceProvider)
   at Microsoft.VisualStudio.Setup.ProductInstallerFactory.Create(ChannelNode`1 channelProductSummary, IInstance instance, VersionBundle latestVersion)
   at Microsoft.VisualStudio.Setup.ProductInstallerCache.GetInstaller(String installerId, Func`2 func)
   at Microsoft.VisualStudio.Setup.ProductsProviderService.GetProduct(String channelId, String productId)]
2017-05-24T08:38:09 : Verbose : Closing installer. Return code: 0.
2017-05-24T08:38:09 : Verbose : [ProductsProviderImpl]: Rpc connection was closed.
2017-05-24T08:38:09 : Verbose : [InstalledProductsProviderImpl]: Rpc connection was closed.
2017-05-24T08:38:09 : Verbose : [InstallerImpl]: Rpc connection was closed.

我不确定还可以尝试什么,Microsoft 实时支持没有提供我在上述链接中尚未尝试过的任何新内容。

有其他人经历过这种情况并知道如何提供帮助吗?

哦,我忘了提一下,安装程序似乎处于无法使用的状态,以至于我无法登录以报告问题。此外,developercommunity.visualstudio.com 网站似乎也无法使用我的 microsoft 帐户登录。

[

【问题讨论】:

    标签: visual-studio visual-studio-2017


    【解决方案1】:

    按照以下步骤来解决这个“包清单签名验证失败”问题:

    1. 搜索“certmgr.msc”

    2. 点击导入

    3. 从安装程序certificates文件夹中一一导入所有证书。

    4. 再次运行安装程序

    【讨论】:

    • 从哪里导入证书?
    【解决方案2】:

    发件人:https://developercommunity.visualstudio.com/content/problem/3983/when-the-setup-start-i-receive-the-message-the-pac.html

    我通过运行 gpedit.msc 找到该设置,然后运行计算机配置 -> Windows 设置 -> 安全设置 -> 本地策略 -> 安全选项 -> 系统加密:使用符合 FIPS 的算法进行加密、散列和签名

    基本上关闭“使用符合 FIPS 的算法进行加密、散列和签名”。解决了这个问题。

    我不知道它以前是如何工作的,因为我从未关闭过这个 GP 设置。除非它是我们的 GP 的新设置,或者 MS 不再使用符合 FIPS 的算法......等等......

    【讨论】:

      【解决方案3】:

      您至少需要从证书文件夹安装:

      1. manifestCounterSignCertificates.p12;
      2. manifestSignCertificates.p12;
      3. vs_installer_opc.SignCertificates.p12.

      您可以尝试从证书文件夹中删除这些文件,然后再次运行安装程序以接收新证书。

      也可以使用微软的rootupd工具更新证书http://download.windowsupdate.com/msdownload/update/v3/static/trustedr/en/rootsupd.exe

      然后解压文件:

      rootsupd.exe /c /t:C:\temp\newroot
      

      从 c:\temp\newroot 从提升的提示符运行(以管理员身份运行 cmd.exe):

      updroots.exe authroots.sst
      updroots.exe updroots.sst
      updroots.exe -l roots.sst
      updroots.exe -d delroots.sst
      

      【讨论】:

        【解决方案4】:

        我在干净的 Win7 专业机器上遇到了这个问题。我在离线安装程序上创建了here,然后将证书从证书文件夹安装到“受信任的根证书颁发机构”中,然后它就可以工作了

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 2015-10-09
          • 2017-08-18
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多