none
VS2017 requires KB2919355 which is already installed RRS feed

  • Question

  • Windows 8.1 Pro, latest VS2017 community installer: Before you can install visual studio on Windows 8.1 and Windows 2012 R2, we need you to install KB2919355

    KB2919355 is installed on my PC. PC is up-to-date.

    I have VS2013 and VS2015 installed on this PC.

    Log:

    Beginning of the log. Start Time: 12/03/2017 13:57:25
    VisualStudio Bootstrapper:12/03/2017 13:57:25: Current Optin root path does not exists
    VisualStudio Bootstrapper:12/03/2017 13:57:25: Commandline arguments =
    VisualStudio Bootstrapper:12/03/2017 13:57:26: Parent process name = vs_community__1931732527.1489265443
    VisualStudio Bootstrapper:12/03/2017 13:57:26: Parent process product version = 15.0.26228.0
    VisualStudio Bootstrapper:12/03/2017 13:57:26: CampaignId = 1931732527.1489265443
    VisualStudio Bootstrapper:12/03/2017 13:57:26: DownloadURL = https://aka.ms/vs/15/release/installer
    VisualStudio Bootstrapper:12/03/2017 13:57:26: InstallLocation = C:\Program Files (x86)\Microsoft Visual Studio\Installer
    VisualStudio Bootstrapper:12/03/2017 13:57:26: OfflineFilePath =
    VisualStudio Bootstrapper:12/03/2017 13:57:26: LayoutLocation =
    VisualStudio Bootstrapper:12/03/2017 13:57:26: ExecutableArguments = /finalizeInstall install --in "C:\ProgramData\Microsoft\VisualStudio\Packages\_bootstrapper\vs_setup_bootstrapper.json" --locale en-US --activityId "5cde45c7-c347-414a-ba81-00ffbdd73a1f" --campaign "1931732527.1489265443"
    VisualStudio Bootstrapper:12/03/2017 13:57:26: OSVersion = Microsoft Windows NT 6.3.9600.0
    VisualStudio Bootstrapper:12/03/2017 13:57:26: Windows 8.1 requires KB2919355.


    I have spent a day searching for a reason. Do you have any ideas?

    Thanks





    • Edited by Stan MMS Sunday, March 12, 2017 10:09 PM
    Sunday, March 12, 2017 3:28 PM

Answers

  • If you have this problem you need to force CLR to prefer 64bit for 'Any CPU' exe. To do this you need to run this in a command line:
    c:\Windows\Microsoft.NET\Framework64\v2.0.50727>Ldr64.exe set64

    Hope this helps somebody.



    • Marked as answer by Stan MMS Sunday, March 12, 2017 10:43 PM
    • Edited by Stan MMS Sunday, March 12, 2017 10:44 PM
    Sunday, March 12, 2017 10:42 PM

All replies

  • Just a follow up. So far I found that vs_setup_bootstrapper.exe runs under WOW rather than as a 64bit application (no idea why, I have x64 processor and 64bit windows)

    Anyway in  Microsoft.VisualStudio.Setup.Bootstrapper.Utilities   -  DetectKB2919355() there is this code: 

    RegistryKey registryKey = RegistryKey.OpenRemoteBaseKey(RegistryHive.LocalMachine, string.Empty).OpenSubKey("SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Component Based Servicing\\Packages\\")
     

    If this line runs under 32bit then the registryKey is null and the second line throws an exception:

    RegistryKey registryKey2 = registryKey.OpenSubKey("Package_for_KB2919355~31bf3856ad364e35~amd64~~6.3.1.14");

    Because this check fails the result is false and the installer display the message that KB2919355 is missing.

    Anybody from VS team to help here?

    Sunday, March 12, 2017 9:40 PM
  • If you have this problem you need to force CLR to prefer 64bit for 'Any CPU' exe. To do this you need to run this in a command line:
    c:\Windows\Microsoft.NET\Framework64\v2.0.50727>Ldr64.exe set64

    Hope this helps somebody.



    • Marked as answer by Stan MMS Sunday, March 12, 2017 10:43 PM
    • Edited by Stan MMS Sunday, March 12, 2017 10:44 PM
    Sunday, March 12, 2017 10:42 PM
  • Have the same problem. Have you found out solution?

    I tried to change register key Enable64Bit from 0 to 1. Message "VisualStudio Bootstrapper:27.03.2017 16:00:38: Windows 8.1 requires KB2919355." disappeared but Bootstrapper stops working anyway and I have "VisualStudio Bootstrapper:27.03.2017 16:00:38: OSVersion = Microsoft Windows NT 6.3.9600.0" in the end of the log.

    Monday, March 27, 2017 1:34 PM
  • Hm....in fact I didn't try the online installer. I have downloaded the offline installer and that worked for me (of course once I run 'Ldr64.exe set64') 

    The guide to download the offline installer: https://docs.microsoft.com/en-us/visualstudio/install/create-an-offline-installation-of-visual-studio 

    Monday, March 27, 2017 1:39 PM
  • Thanks for answer. I've tried to use the online installer and offline one. There are about 18 gB loaded on my computer. I've installed certificates, than run the installation file "c:\vs2017offline\vs_Community.exe" and got the problem like I got with the online installer:

    Beginning of the log. Start Time: 27.03.2017 16:52:18
    VisualStudio Bootstrapper:27.03.2017 16:52:19: Current Optin root path does not exists
    VisualStudio Bootstrapper:27.03.2017 16:52:19: Commandline arguments = 
    VisualStudio Bootstrapper:27.03.2017 16:52:19: Parent process name = vs_Community
    VisualStudio Bootstrapper:27.03.2017 16:52:19: Parent process product version = 15.0.26228.0
    VisualStudio Bootstrapper:27.03.2017 16:52:19: CampaignId = 
    VisualStudio Bootstrapper:27.03.2017 16:52:19: DownloadURL = https://aka.ms/vs/15/release/installer
    VisualStudio Bootstrapper:27.03.2017 16:52:19: InstallLocation = C:\Program Files (x86)\Microsoft Visual Studio\Installer
    VisualStudio Bootstrapper:27.03.2017 16:52:19: OfflineFilePath = C:\vs2017offline\vs_installer.opc
    VisualStudio Bootstrapper:27.03.2017 16:52:19: LayoutLocation = 
    VisualStudio Bootstrapper:27.03.2017 16:52:19: ExecutableArguments = /finalizeInstall install --layoutPath "C:\vs2017offline" --in "C:\vs2017offline\Response.json" --locale ru-RU --activityId "c86f82d5-1e56-4e95-acb4-1397043ce5d8"
    VisualStudio Bootstrapper:27.03.2017 16:52:19: OSVersion = Microsoft Windows NT 6.3.9600.0

    Changing of locale to en-US doesn't help.

    Monday, March 27, 2017 2:04 PM
  • You could probably make sure the installer runs as 64bit in the task manager - processes. If it runs as 64bit then I do not understand why it displays the same error. 

    I used ILSpy to decombile bootstrapper library and this is the code it use to validate KB (below). Try to create a command line app with 'Any CPU' platform and try it on your PC. It will probably tell you what is wrong. 

            internal static bool DetectKB2919355()
            {
                int num = 112;
                bool result;
                try
                {
                    var r = RegistryKey.OpenRemoteBaseKey(RegistryHive.LocalMachine, string.Empty);
                    using (RegistryKey registryKey = r.OpenSubKey("SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Component Based Servicing\\Packages\\"))
                    {
                        RegistryKey registryKey2 = registryKey.OpenSubKey("Package_for_KB2919355~31bf3856ad364e35~amd64~~6.3.1.14");
                        if (registryKey2 == null)
                        {
                            registryKey2 = registryKey.OpenSubKey("Package_for_KB2919355~31bf3856ad364e35~x86~~6.3.1.14");
                            if (registryKey2 == null)
                            {
                                result = false;
                                return result;
                            }
                        }
                        object value = registryKey2.GetValue("currentstate", null);
                        if (value == null)
                        {
                            result = false;
                        }
                        else if (int.Parse(value.ToString()) != num)
                        {
                            result = false;
                        }
                        else
                        {
                            result = true;
                        }
                    }
                }
                catch
                {
                    result = false;
                }
                return result;
            }

    Monday, March 27, 2017 2:19 PM