locked
Cannot install .NET framework on Symlinked drive RRS feed

  • Question

  • I'm trying to install .NET framework 3.5 on Windows 8, and I'm getting the error: "The system cannot move the file to a different disk drive." and "Error code: 0x80070011"

    First off, here's my setup: I have a 64GB SSD hosting my OS. I have C:\Windows\WinSxS, C:\Users, C:\Program Files, and C:\Program Files (x86) all symlinked to a mechanical storage drive - This is to save space on my SSD, and still gain the benefits of boot times as well as some performance increase.

    I realize this is not a recommended setup - however, this is how I have it set up, and this is how I want to keep it set up. I feel that at this point, I should be able to install any software as I like, wherever I like. I shouldn't be forced to install things in one specific spot, taking up extra space on my very small hard disk.

    How can I override this error, or force the framework to install to another location?

    Thanks for your help!
    Wednesday, July 10, 2013 11:23 PM

Answers

  • Windows is not designed to run in an environment where some folders are moved to a different drive, that's why you get the error:

    C:\Users\André>err  0x80070011
    # as an HRESULT: Severity: FAILURE (1), FACILITY_WIN32 (0x7), Code 0x11
    # for hex 0x11 / decimal 17
      ERROR_NOT_SAME_DEVICE                                          winerror.h
    # The system cannot move the file to a different disk drive.
    # 1 matches found for "0x80070011"


    "A programmer is just a tool which converts caffeine into code"

    • Marked as answer by Leo Huang Thursday, July 18, 2013 7:49 AM
    Thursday, July 11, 2013 5:06 AM
    Answerer

All replies

  • I had exactly the same issue with installing the Remote Server Administration Tools for Windows 8.1 Preview.  My SSD c:\users on one of my test systems is symlinked to the spindle d:\users directory to save SSD space.  Everything else works, except for that update.

    In my case, I had to start in safe mode, break the link, reboot and login using the local administrator account (environment was busted, but that was okay since this was a temp workaround).  From there, I was able to successfully install the tools.  Once the tools were installed, rebooted back into safe mode, restablished the symlink, and booted normally.  Everything back to normal and I have the tools installed and working.

    Since I now know this particular configuration does not work well, when 8.1 RTMs sometime in August, I will use ADK to create an autounattend.xml that officially redirects the users directory to d:\users

    Unfortunately, in your case with all of the important directories symlinked to your mech-drive, I don't know if just doing users will fix your issue.

    Thursday, July 11, 2013 3:39 AM
  • I'm really hoping to avoid doing this, just because I've already built up a fairly large collection of files and applications, and I might not even have the space to move everything back to the SSD temporarily.

    Not to hate on Microsoft on their own site, but do they really not have a way to override things like this, perhaps a command line switch? When I pay as much as one does for Windows, one would hope that you can use it the way -you want-, not entirely their way. Most things in Windows can be modified or changed to ones own liking. I think that the location of my directories should be no different!

    Any other help would be greatly appreciated, and thanks for the reply DarienHawk67!

    Thursday, July 11, 2013 4:00 AM
  • Windows is not designed to run in an environment where some folders are moved to a different drive, that's why you get the error:

    C:\Users\André>err  0x80070011
    # as an HRESULT: Severity: FAILURE (1), FACILITY_WIN32 (0x7), Code 0x11
    # for hex 0x11 / decimal 17
      ERROR_NOT_SAME_DEVICE                                          winerror.h
    # The system cannot move the file to a different disk drive.
    # 1 matches found for "0x80070011"


    "A programmer is just a tool which converts caffeine into code"

    • Marked as answer by Leo Huang Thursday, July 18, 2013 7:49 AM
    Thursday, July 11, 2013 5:06 AM
    Answerer
  • I understand. However, with some key directories, it is not recommended that you change the default path. This same logic applies to Linux also. It is usually not a good idea to move /sbin, /bin, etc.   Even RedHat recommends  that certain partitions remain in specific locations.

    However, the official, supported, and recommended method to redirect certain system directories is to use an autounattend.xml file during installation or sysprep.

    Sorry that none of this helps with your current situation.  Hopefully, this can help with future installation.

    Thursday, July 11, 2013 1:30 PM
  • Hello!

    It might be a bit late, but i answer anyway.

    My setup is probably exactly the same as yours.

    C:\Program Files\ and C:\Program Files (x86)\ are symbolic links to

    P:\Program Files\ and P:\Program Files (x86)\ in my case

    and i had the exact same issue with error 0x80070011 trying to install .NET 3.5.

    Well, i actually managed to install it with this little "trick":

    Regedit -> HKLM/Software/Microsoft/Windows/CurrentVersion

    Now change the Path in 

    ProgramFilesDir

    ProgramFilesDIr (x86) and

    ProgramW6432Dir  to (in my case) Drive P:\, install .NET 3.5 and change back the paths afterwards.

    Restart your computer and everything should be fine :)

    • Proposed as answer by Lupus590 Wednesday, May 18, 2016 10:50 PM
    Tuesday, August 11, 2015 1:39 PM
  • HUGE thank you, this worked I knew that this would probably be the solution but I wanted to know if it worked for someone else.
    Wednesday, August 12, 2015 4:40 AM
  • for convince, here are some pastebin .reg files which do the above:

    fix install.reg

    revert after fix install.reg


    Sorry for the slight necro

    Also, would there be any problems if the registry was left to point to P drive?

    • Proposed as answer by Lupus590 Friday, May 20, 2016 11:56 PM
    Friday, May 20, 2016 11:56 PM
  • Hello!

    It might be a bit late, but i answer anyway.

    My setup is probably exactly the same as yours.

    C:\Program Files\ and C:\Program Files (x86)\ are symbolic links to

    P:\Program Files\ and P:\Program Files (x86)\ in my case

    and i had the exact same issue with error 0x80070011 trying to install .NET 3.5.

    Well, i actually managed to install it with this little "trick":

    Regedit -> HKLM/Software/Microsoft/Windows/CurrentVersion

    Now change the Path in 

    ProgramFilesDir

    ProgramFilesDIr (x86) and

    ProgramW6432Dir  to (in my case) Drive P:\, install .NET 3.5 and change back the paths afterwards.

    Restart your computer and everything should be fine :)

    I run a 8GB ram drive windows but Windows kept bloating up my drive so I symlinked my winsxs and SoftwareDistribution folders, there are no entries in the registry for winsxs location, unfortunately this doesn't help me. When I try to update, it won't complete. 

    Sunday, September 16, 2018 8:15 PM
  • Your reply is exactly as useless as the first time you posted with the same text.

    No offence, but you sound like a robotic help-desk avatar.

    Irrelevant, ignorant and obtuse.

    Two posts down you see someone willing to help - fantastic!

    Quick, someone hire THAT guy and fire THIS guy.

    Monday, June 29, 2020 10:14 PM