507

There is a new folder full of installers located at C:\ProgramData\Package Cache\. I believe this is from Visual Studio 2012 RC.

Can I delete these gigabytes of data without consequences? Are they all temporary files? It's a beta product so I'm not sure there is much information out there about this folder.

6
  • 4
    I would suggest against anything that's more than 50MB in size, it's used for something. Try moving them to your desktop or something, running it, and if it crashes, move them back.
    – Jon
    Aug 4, 2012 at 3:13
  • 1
    I can't really test my original scenario but I recall that everything uninstalled fine. Since there are several people saying they have had issues, I've revoked the accepted answer. Keep in mind that I was using 2012 RC.
    – Ben L
    Nov 13, 2013 at 23:47
  • @BenL even though I understand when you say "I can't really test my original scenario but I recall that everything uninstalled fine. Since there are several people saying they have had issues, I've revoked the accepted answer." I think my answer below (the most popular one so far) allows anyone, in any case, to work around the issue by moving and pointing the folder to a drive with more space. It will even work with offline media. So, you can simply remount/insert your archive DVD/reconnect your external drive, if that's where you move this too, at the time of uninstall, repairs, etc. Feb 2, 2014 at 15:09
  • 1
    @FlakDiNenno I like your workaround. But the question is about if it's safe to delete, not if it's safe to mount or offline.
    – Ben L
    Feb 3, 2014 at 16:12
  • @BenL Good point. I've added some detail and a link from Microsoft that definitely recommends that you DO NOT delete the folder and why. Feb 16, 2014 at 0:28

9 Answers 9

445

TL;DR: Do NOT delete this folder

(see below for workarounds)


Why Not?

There have been conflicting reports about whether the absence of this folder (as a consequence of deleting it) will actually and in all cases cause issues with the visual studio installation, i.e. during normal operation, during reinstall, patch/upgrade, repair install, or uninstall. However, the recommendation from MICROSOFT is clearly to NOT DELETE IT.

From Microsoft Developer Tools Blogs → HERE

When repairing, modifying, or uninstalling a product or when installing or uninstalling a patch, if source media is required the package cache is used automatically and most users will never see a prompt. Only if the package cache is missing or incomplete will Visual Studio setup prompt to download (if connected) or locate media as shown in the screenshot below.

Visual Studio 2012 Prompt for Source

Users who have installed from media even get the option to download (if connected). So while very few customers should ever see this dialog, we wanted to make sure the experience was easy.
Even though we will prompt to download packages to the cache if missing, we recommend users do not remove the package cache. Not only is the cached used by many other products that are installed with Burn and may not provide the same download experience, there are scenarios when Windows Installer may require source that we cannot handle because our code is not running.


Solution/Work-Around:#

If you need to reclaim this space, your safest bet is to avoid "deleting" anything, but to instead, move this folder and all it's files. You can safely do this following the instructions below to any local/live, online, near-line, or offline storage as long as that storage system that can be mounted to a drive letter or any mount point on the NTFS file system. Any of the following will work:

  • another live (mounted) partition
  • an optical disc (CD, DVD, etc.) with a live filesystem like FAT, or NTFS
  • an external hard drive
  • a USB drive
  • a network drive

Whenever you are prompted for the media/receive any errors about missing files/missing location, you simply make sure to remount/reinsert your drive/media if it's not already a live partition.

Once moved, in order to "link" the old mount point/location (in most cases C:\ProgramData\Package Cache\), you simply create a directory junction to it.

Junctions are recognized at the file system level as an alias entry in the FSTAB. Therefore, it's transparent to all programs, including the OS itself. In other words, it is NOT seen as a file that simply points to another location (like a shortcut) and therefore always works without incident.

  1. You would move the folder(s) in question to its new location

  2. Create the junction

    • Option 1. (natively): Just issue the built-in Windows Vista / 7 / 8 command and the cmd prompt:

        mklink /J oldpath newpath
      

    NOTE: If you make the newpath absolute, you'll be able to move link without breaking the pointer to the newpath. If you make the newpath relative, you'll be able prevent breaking the link, as long as you move BOTH the link and target TOGETHER and maintain their relative paths.

    • Option 2. (using a tool): Another GREAT alternative is a free handy utility I've been using for years called "Link Shell Extension". LSE is free and you can find it here (or Google for it): http://schinagl.priv.at/nt/hardlinkshellext/hardlinkshellext.html

      LSE allows you to create symlinks, hardlinks, junctions, smartcopies, smartclones, smart mirrors, smart moves, splices, multiple sources, and bunch of other stuff I found too confusing to read, frankly. But, it's a brilliant free product that creates a Windows Explorer context menu that allows you right-click on your LINK-TARGET folder then drag it to where you'd like to create the actual link. You can of course rename the link to anything you'd like.

19
  • 26
    this is great solution. i need to cleanup my SSD c drive by moving files to other drive. many thanks
    – marek
    Aug 15, 2013 at 16:34
  • 9
    +1 for Hardlink Shell Extension. Couldn't live without it.
    – Dennis G
    Dec 15, 2013 at 12:47
  • 243
    Dear Microsoft: Please do not use the name "cache" to describe a folder that causes this much headache when deleted. Thanks. May 11, 2016 at 23:27
  • 10
    Did the trick with moving to another drive and making a junction. Running VS2015 SP3 installer today, the installer caused the junction to devolve to a normal directory (possibly when uninstalling an older version of some component, it recursed through "empty" parent directories removing them -- there are known problems with junctions and naive empty directory tests). So it placed new components in C:\ProgramData\Package Cache and then failed to find items in the new location where the junction formerly pointed. Just a warning to future readers the junction may need to be re-established.
    – Ben Voigt
    Jul 19, 2016 at 21:15
  • 5
    As a more permanent fix, use NTFS permissions and deny "delete" permission on the junction itself.
    – Ben Voigt
    Jul 19, 2016 at 21:15
54

I've found the same folder on my laptop after installing VS2012. I tried renaming that folder to '__Package Cache'. When I then tried to uninstall VS2012 the uninstall process failed to start.

More information is available here.

0
42

For Visual Studio 2017, you can disable the package cache (even after Visual Studio is installed) by calling:

"%ProgramFiles(x86)%\Microsoft Visual Studio\Installer\vs_installer.exe" --nocache

I gained about 2 GB of disk space on my system drive from that (YMMV).

For details, see the docs: Visual Studio Docs: Disable or Remove the Package Cache

5
  • Has anyone tested disabling and removing the cache after vs2017 is installed?
    – Ben L
    May 29, 2018 at 18:04
  • 1
    @BenL: It worked for me.
    – 0xA3
    May 30, 2018 at 16:10
  • 5
    This seems to be the proper way of deleting the Package Cache folder. Only thing is, calling is not enough: you actually have to execute an action through the installer (such as upgrading or reinstalling visual studio).
    – rsenna
    Dec 21, 2018 at 9:46
  • 7
    By moving the VS package cache I did manage to save a lot of space on the primary drive, but I don't think it answers this question. The folder which ended up virtually empty as a result of moving the VS package cache was C:\ProgramData\Microsoft\VisualStudio\Packages, not C:\ProgramData\Package Cache. Nov 8, 2019 at 10:00
  • It doesn't tell how to remove the package cache on the Microsoft's website when you follow the link. Only how to disable or move it.
    – KulaGGin
    Nov 16, 2021 at 10:50
27

The correct answer seems to be that if you delete it, VS 2012 will fail to uninstall, but it is otherwise not needed. Therefore:

  1. You can leave the files there. Everything will work but it will use lots of disk space.
  2. You can delete the files, and if you want to uninstall VS 2012, you can re-run the original installer to put the files back, then uninstall.
  3. You can move the files to another drive with more free space and either:

    a) move the files back when you need them

    b) create a junction as in Flak's suggestion (warning: junctions are tricky beasts, and will lie to Windows Explorer telling you the files take up disk space on C: when they are really on another drive!)

Junctions and symbolic links are the only answer for moving system files to another drive. They are NTFS filesystem-level features that even Windows itself is oblivious to, and thus are a really big hammer (and potential security risk) that should be used sparingly unlike their UNIX/Linux/BSD counterparts, since they have been around a lot longer on that OS family and UNIX/Linux/BSD programs know how to deal with them.

1
  • 3
    junctions are tricky beasts, and will lie to Windows Explorer telling you the files take up disk space on C - if what you mean by this is that when you open the properties dialog of the junction, it displays the "Size on disk" equal to its size on the disk it actually is in, then I agree that it is misleading. But however, actual the size of the folder being junctioned doesn't add up to the total used space on the C drive as displayed by properties dialog of C drive. In that case your statement is misleading ;-) Mar 18, 2017 at 10:14
17

All the software's installers are saved in this folder. It would fail when you try to uninstall a software after deleting this folder.

0
14

I noticed this folder after I installed Visual Studio 2012, in my case everything in it contained to the Visual Studio 2012 installation, I manually removed it and everything seems to be working including Visual Studio.

2
  • 9
    This is the accepted answer and it is wrong. If you delete this folder you won’t be able to uninstall or update Visual Studio (and related tools and redistributables — this will cause security issues if an update to MSVC runtimes comes out)
    – kinokijuf
    Jul 13, 2013 at 12:05
  • 9
    You're wrong, I have without any problem managed to update Visual Studio 2012 with the latest updates. Thanks. Aug 9, 2013 at 9:16
12

YES you can delete this directory, if you have uninstalled Visual Studio.

I found this directory after uninstalling Visual Studio in preparation for installing a SSD smaller than the hard drive I was using before. This computer is no longer a development station.

Uninstalling Visual Studio left behind some other software like a program to connect to a local SQL server, which I do not have. I uninstalled it.

It also left behind several .NET programs but I don't know which ones are safe to uninstall so I left them in place.

So to the point of the question: I did delete this directory.

It was quite large so helped me to fit into my SSD better.

Now a day later I haven't noticed any problems.

2
  • 11
    Months later, still no problems.
    – SDsolar
    Oct 2, 2017 at 4:01
  • 6
    Be careful! Package Cache does NOT relate to Visual Studio only! I just deleted (well, recycled) the folder after uninstalling all VS installs, and got problems just minutes later when trying to uninstall a flight simulator! The uninstaller was located in this very folder.
    – exscape
    Jul 13, 2020 at 21:24
9

No. If you delete this folder, you won’t be able to uninstall (and possibly update) Visual Studio.

0

It's usually better not to mess up with deleting these files manually, and instead leave this task to either Windows Disk Cleanup, or other disk cleaning tools. The one I personally use and can recommend you is the CCleaner.

CCleaner can help you automatically find obsolete files in a program and deletes them for you.

5
  • 16
    Be very careful; these programs are by no means foolproof. CCleaner has been known to remove files critical for some programs to run, and some options will remove files kept for uninstallation.
    – Bob
    Nov 16, 2012 at 11:53
  • 6
    CCleaner is just crappy more or less. I had to restore my computer (due to not be able to start) after trying using this tool. Better not never use it.
    – Hopeless
    Nov 16, 2015 at 13:38
  • 1
    @Hopeless CCleaner is a tool, like an axe or a chainsaw. You can use it to cut wood or to cut your leg off, if you're not being careful. But if you cut your leg off using the tool, whose fault is it? Is it tool's fault, or yours, actually? Yep, that's right, it's actually your fault for cutting your leg off using the chainsaw, not chainsaw's, or its' inventor or maker. I don't use CCleaner myself, I clean using other tools. But when I make my system unbootable, I don't blame my command line for being a crappy tool.
    – KulaGGin
    Nov 16, 2021 at 11:04
  • @KulaGGin do you mean that I can cut off my own leg just by clicking on a button on the dashboard of CCleaner? It's not clearly dangerous like a knife, there is something between that knife and the CCleaner =)). I'm just a user and I did use the CCleaner tool normally, it's like you push the Start button of a helpfully-looking complicated machine and boom! It was actually a bug in that tool and if it could happen once, it can happen again. Such a bug is so dangerous and we should simply never give it a chance to occur by simply not using the tool.
    – Hopeless
    Nov 30, 2021 at 9:23
  • 1
    @Hopeless man, if you ask it to remove your boot section and make it the tool's fault, then it's just false. You pushed some wrong button and it corrupted your system, it's your fault. If it was a bug, then too bad. All software has bugs. Anyone saying otherwise is a pathetic liar. So are you not going to use software now because it has bugs? Fine, it's your choice then.
    – KulaGGin
    Nov 30, 2021 at 14:23

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .