tabs to spaces and some other minor clean-ups

git-svn-id: https://svn.code.sf.net/p/nsis/code/NSIS/trunk@5247 212acab6-be3b-0410-9dea-997c60f758d6
This commit is contained in:
kichik 2007-08-18 17:15:08 +00:00
parent 17f376f671
commit e2b948ae02

View file

@ -630,34 +630,35 @@ char * NSISCALL GetNSISString(char *outbuf, int strtab)
int x = 2; int x = 2;
DWORD ver = GetVersion(); DWORD ver = GetVersion();
/* /*
SHGetFolderPath as provided by shfolder.dll is used to get special folders SHGetFolderPath as provided by shfolder.dll is used to get special folders
unless the installer is running on Windows 95/98. For 95/98 shfolder.dll is unless the installer is running on Windows 95/98. For 95/98 shfolder.dll is
only used for the Application Data and Documents folder (if the DLL exists). only used for the Application Data and Documents folder (if the DLL exists).
Oherwise, the old SHGetSpecialFolderLocation API is called. Oherwise, the old SHGetSpecialFolderLocation API is called.
There reason for not using shfolder.dll for all folders on 95/98 is that There reason for not using shfolder.dll for all folders on 95/98 is that
some unsupported folders (such as the Start Menu folder for all users) are some unsupported folders (such as the Start Menu folder for all users) are
simulated instead of returning an error so whe can fall back on the folder simulated instead of returning an error so whe can fall back on the folder
for the current user. for the current user.
SHGetFolderPath in shell32.dll could be called directly for Windows versions SHGetFolderPath in shell32.dll could be called directly for Windows versions
later than 95/98 but there is no need to do so, because shfolder.dll is still later than 95/98 but there is no need to do so, because shfolder.dll is still
provided and calls shell32.dll. provided and calls shell32.dll.
*/ */
BOOL use_shfolder = ( BOOL use_shfolder =
// Use shfolder if not on 95/98
// Use shfolder if not on 95/98
!((ver & 0x80000000) && (LOWORD(ver) != 0x5A04)) || !((ver & 0x80000000) && (LOWORD(ver) != 0x5A04)) ||
// Unless the Application Data or Documents folder is requested // Unless the Application Data or Documents folder is requested
((fldrs[2] == CSIDL_COMMON_APPDATA) || (
(fldrs[2] == CSIDL_COMMON_DOCUMENTS)) (fldrs[2] == CSIDL_COMMON_APPDATA) ||
(fldrs[2] == CSIDL_COMMON_DOCUMENTS)
);
); /* Carry on... shfolder stuff is over. */
if (g_exec_flags.all_user_var) if (g_exec_flags.all_user_var)
{ {