Archive: how to use $APPDATA?


how to use $APPDATA?
I want to detect Application Data folder in All Users folder using $APPDATA but it detect Application Data folder in the Windows folder...
Knowing that i use Win98 as OS.
:( :confused: :eek: :blah:


$APPDATA is a constant detected from registry strings, the constant returns the value it is found there. When I had Win98, Start Menu folder was inside Windows folder, and most probably this folder too. This is normal.


i use this code but it didn't work ?


Section ""
SetShellVarContext all
SetOutPath "$APPDATA\Symantec\LiveSubscribe"
Rename "$APPDATA\Symantec\LiveSubscribe\Catalog.liveSubscribe" "$APPDATA\Symantec\LiveSubscribe\Catalog.liveSubscribe.org"
File "Catalogs.liveSubscribe"

SectionEnd
$APPDATA

The application data directory. Detection of the current user path requires Internet
Explorer 4 and above. Detection of the all users path requires Internet Explorer 5 and
above. The context of this constant (All Users or Current user) depends on
the SetShellVarContext setting. The default is the current user
SetShellVarContext
current|all

Sets the context of $SMPROGRAMS and other shell folders. If set to 'current' (the default),
the current user's shell folders are used. If set to 'all', the 'all users' shell folder
is used. The all users folder may not be supported on all OSes. If the all users folder
is not found, the current user folder will be used. Please take into consideration that
a "normal user" has no rights to write in the all users area. Only admins have full
access rights to the all users area. You can check this by using the UserInfo Plugin.

What didn't work, the Rename command or File command?


the installer didn't get the Application Data Directory for All Users as insall directory, but it get it for the active user only. :( :(


Detection of the all users path requires Internet Explorer 5 and above.


I have Internet Explorer v6.0 !;)


Are you sure there is a folder somewhere else? Windows 9x usually stores things like this in the Windows folder.


Here is what I found when I tried using $APPDATA.

System 1 (Win98SE with IE6 SP1, configured for several users):

The following folders exist:

C:\Windows\All Users\Application Data
C:\Windows\Application Data
C:\Windows\Profiles\All Users\Application Data
Several C:\Windows\Profiles\<user name>\Application Data folders

$APPDATA is "C:\Windows\Profiles\<user name>\Application Data" for "SetShellVarContext all" and "SetShellVarContext current"

System 2 (Win98SE with IE6 and the latest fixes, only one user):

The following folders exist:

C:\Windows\All Users\Application Data
C:\Windows\Application Data

(C:\Windows\Profiles does not exist)

$APPDATA is "C:\Windows\Application Data" for "SetShellVarContext all" and "SetShellVarContext current"


I use system 2 (Win98SE with IE6 and the latest fixes, only one user), How to get this folder?
"C:\Windows\All Users\Application Data" :blah: :blah: :blah:


Sorry, I don't know (apart from creating it yourself (if it does not exist) and then using it directly).

The "C:\Windows\All Users" folder was created during the installation of Windows 98SE.

The "C:\Windows\All Users\Application Data" folder was created about a month later (I guess it was created when I installed something - there are only a few folders inside it and they all have much newer dates).


Use regedit and find:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders