What's the %ProgramData% variable in winapp.ini?

In the Avast! entries of the embedded winapp.ini I found the system variable %ProgramData%.

It is not explained here http://www.piriform.com/docs/ccleaner/advanced-usage/ccleaner-ini-files/environment-variables-and-system-variables-in-ccleaner

What does it stand for (in Windows XP)?

Could it be:

XP: Documents and Settings\All Users

Vista: ProgramData

XP: Documents and Settings\All Users\Application Data

Vista: ProgramData

XP: %CommonAppData%

Vista/7: %ProgramData%

Don't have XP machine here so can't test these.

%ProgramData% opens "C:\ProgramData" in Win7.

Its the same as %AllUsersProfile%

Its the same as %AllUsersProfile%

Yup, at least in Win7. Does it work/is it the same in XP, too?

Regardless of all Piriform products,

%ProgramData% is an environmental variable in Vista and Windows 7.

This variable is missing from XP Home

I think years ago I had to especially define the environment variable %ALLUSERSPROFILE% as C:\Documents and Settings\All Users,

and that allowed me to write the SAME *.bat script to use the correct folders regardless of the changes from XP to Windows 7.

A recent CCleaner enhancement probably allows WinApp?.ini to similarly use %ProgramData% under XP as well as Windows 7

You will find many more subtle variations at

http://en.wikipedia....oldid=457917063

The top of the table is especially relevant

Unfortunately what I paste as 3 lines including a header is only displayed as one line.

Variable Windows XP Windows Vista/7 %ALLUSERSPROFILE% and %PROGRAMDATA% C:\Documents and Settings\All Users C:\ProgramData %APPDATA% C:\Documents and Settings\{username}\Application Data C:\Users\{username}\AppData\Roaming

It looks like CCleaner is not able to correctly work with this variable on Windows XP.

There is e.g. this line vor avast 5 in the embedded winapp.ini

FileKey2=%ProgramData%\Alwil Software\Avast5\log|*.*

If %ProgramData% ist really equal %ALLUSERSPROFILE% then this path doesn't exist on my machine.

The path on my machine is %COMMONAPPDATA%\Alwil Software\Avast5\log|*.*

(%ALLUSERSPROFILE% is not the same path as %COMMONAPPDATA%, if I am correct. %COMMONAPPDATA% is the folder for application data in the %ALLUSERSPROFILE% directory)

After running CCleaner all files in this folder still exist. Several of these files are blocked by avast and cannot be deleted with the running virus shield anyway.

Another line for avast 6 is

FileKey1=%ProgramData%\Avast Software\Avast\log|*.*

That doesn't exist here either. There's only a path %COMMONAPPDATA%\avast

Looks like the avast entries don't work at least on my XP machine.

(Thank God) the %ProgramData% variable is only used in the avast entries of the embedded winapp.ini.

Unfortunately Windows chaos rules supreme

Applications may be installed either for a specific user or for all users,

and on XP that results in their configuration data files being held somewhere in

C:\Documents and Settings\{username}\...

or

C:\Documents and Settings\All Users\...

on Windows 7 it seems to be

C:\Documents and Settings\{username}\Application Data

or

C:\Users\{username}\AppData\Roaming

or possibly

C:\Users\{username}\AppData\Local

As I already indicated, you have to define %PROGRAMDATA% (or %ALLUSERSPROFILE%) if you want to use them under XP.

I guess that Piriform MAY have defined them as part of the environment under which CCleaner is running,

in which case the hopefully will work when you specify them as part of an INCLUDE or in a WinApp?.ini script,

but they will not exist for other applications under XP.

It took a long time but now I can stipulate %USERPROFILE% as part of an INCLUDE and it works for XP and W7.

For a very long time this has ALWAYS been a variable AVAILABLE to all applications under XP and W7,

but only recently does it work for INCLUDE.

Perhaps there is still Work In Progress.

Hello. I think %commonappdata% == %programdata% if im not mistaken. I try to use ones that work in XP because they tend to usually work in Win7 as well, whereas the opposite is not always true. I'll have a look at this tomorrow :)