Are 'C:\ProgramData' and 'C:\Users\All Users' the same? Do I need both?

44

9

I have these two directories on my hard drive, which seem to be identical, and each take up 2.4GB

C:\Users\All Users
C:\ProgramData

Why do both exist? Can I get rid of one of them?

Ben Hymers

Posted 2012-03-26T21:52:33.137

Reputation: 543

The 2.4 GB only counts once against your total hard drive space. It's more obvious when there's a lot more in there. – WBT – 2016-02-24T04:47:43.403

Answers

72

Only C:\ProgramData actually exists as a "real" folder. C:\Users\All Users is a symbolic link to C:\ProgramData. That is, C:\Users\All Users points to C:\ProgramData, so if you navigate to the former, you are automatically redirected to the latter. That is why they appear identical.

C:\ProgramData is known as the "All Users Profile" and is required for the correct operation of Windows 7. Please do not delete it, if Windows even lets you.

C:\Users\All Users is there for backward compatibility. Poorly-written applications do not retrieve the path of the All Users Profile correctly. They say, "Windows, give me the name of the profiles directory." Windows says, "C:\Users." And the program says, "Okay, I know the All Users profile is called All Users and it's inside the profiles directory, so it must be C:\Users\All Users." Really, what the program should say to Windows is, "Windows, give me the path of the all users profile," to which Windows would say, "C:\ProgramData."

Patrick Seymour

Posted 2012-03-26T21:52:33.137

Reputation: 7 662

7The lack of space between Program and Data is a nice touch too... – Neil McGuigan – 2014-07-23T23:28:02.247

12

They are the same folder. Users\All Users is a junction to \ProgramData. From Application Compatibility: Junction Points and Backup Applications:

All Users legacy folder junction requirements: 

Sym links creation location     Destination  
..\Users\All Users              ..\ProgramData

Users\All Users is a link to the ProgramData folder for legacy reasons. It is a junction point (symlink in the UNIX world) and not a copy of the data. I have only the ProgramData folder on my Windows 7 (x64) computer. My guess it is safe to delete the junction point, but not necessary. I don't recommend deleting ProgramData.

shufler

Posted 2012-03-26T21:52:33.137

Reputation: 1 716

11

The folder C:\Users\All Users is a symbolic link to C:\ProgramData. They're two names for the same folder. It is there because many older programs used hard-coded paths to access the folder which doesn't exist any more.

You can delete C:\Users\All Users, but you won't gain anything from it. It consumes virtually no hard drive space.

Do not delete C:\ProgramData.

Hand-E-Food

Posted 2012-03-26T21:52:33.137

Reputation: 4 711