» ExpandEnvStrings - показывает значение переменной среды окружения

K.A.V.
www.oszone.net
22.02.2010
Автор: kotkovets
Последнее обновление: 01.09.2011
ExpandEnvStrings user_var(output) string
Возвращает из string значение переменной среды окружения в user_var.
Если указанной в string переменной среды не существует, то она не будет перезаписана.
Например, если Вы используете не существующую переменную %my_soft%, результатом будет %my_soft% в переменной user_var.
Если возникает ошибка, то переменная user_var очищается и устанавливается флаг ошибки
ExpandEnvStrings $0 "%WINDIR%\MY_SOFT $\n %TEMP%\MY_SOFT"
MessageBox MB_OK "$0"
Пример системных переменных сред оркружения:
!include "MUI2.nsh"

!insertmacro MUI_PAGE_INSTFILES
!insertmacro MUI_LANGUAGE "Russian"

ShowInstDetails show

OutFile ExpandEnvStrings.exe
Caption "ExpandEnvStrings"

Section
   DetailPrint "-----------------"
   ExpandEnvStrings $0 "%HOMEDRIVE%"
   Detailprint "HOMEDRIVE: $0"
   ExpandEnvStrings $0 "%SYSTEMDRIVE%"
   Detailprint "SYSTEMDRIVE: $0"
   ExpandEnvStrings $0 "%HOMEPATH%"
   Detailprint "HOMEPATH: $0"
   ExpandEnvStrings $0 "%WINDIR%"
   Detailprint "WINDIR: $0"
   ExpandEnvStrings $0 "%SYSTEMROOT%"
   Detailprint "SYSTEMROOT: $0"
   ExpandEnvStrings $0 "%USERPROFILE%"
   Detailprint "USERPROFILE: $0"
   ExpandEnvStrings $0 "%ALLUSERSPROFILE%"
   Detailprint "ALLUSERSPROFILE: $0"
   ExpandEnvStrings $0 "%APPDATA%"
   Detailprint "APPDATA: $0"
   ExpandEnvStrings $0 "%COMMONPROGRAMFILES%"
   Detailprint "COMMONPROGRAMFILES: $0"
   ExpandEnvStrings $0 "%PROGRAMFILES%"
   Detailprint "PROGRAMFILES: $0"
   ExpandEnvStrings $0 "%TEMP%"
   Detailprint "TEMP: $0"

   DetailPrint "-----------------"
   ExpandEnvStrings $0 "%LOGONSERVER%"
   Detailprint "LOGONSERVER: $0"
   ExpandEnvStrings $0 "%COMPUTERNAME%"
   Detailprint "COMPUTERNAME: $0"
   ExpandEnvStrings $0 "%USERNAME%"
   Detailprint "USERNAME: $0"
   ExpandEnvStrings $0 "%USERDOMAIN%"
   Detailprint "USERDOMAIN: $0"
   ExpandEnvStrings $0 "%OS%"
   Detailprint "OS: $0"

   DetailPrint "-----------------"
   ExpandEnvStrings $0 "%COMSPEC%"
   Detailprint "COMSPEC: $0"
   ExpandEnvStrings $0 "%PATH%"
   Detailprint "PATH: $0"
   ExpandEnvStrings $0 "%PATHEXT%"
   Detailprint "PATHEXT: $0"
   ExpandEnvStrings $0 "%SESSIONNAME%"
   Detailprint "SESSIONNAME: $0"

   DetailPrint "-----------------"
   ExpandEnvStrings $0 "%NUMBER_OF_PROCESSORS%"
   Detailprint "NUMBER_OF_PROCESSORS: $0"
   ExpandEnvStrings $0 "%PROCESSOR_IDENTIFIER%"
   Detailprint "PROCESSOR_IDENTIFIER: $0"
   ExpandEnvStrings $0 "%PROCESSOR_ARCHITECTURE%"
   Detailprint "PROCESSOR_ARCHITECTURE: $0"
   ExpandEnvStrings $0 "%PROCESSOR_LEVEL%"
   Detailprint "PROCESSOR_LEVEL: $0"
   ExpandEnvStrings $0 "%PROCESSOR_REVISION%"
   Detailprint "PROCESSOR_REVISION: $0"
   DetailPrint "-----------------"
SectionEnd