diff --git a/make_binaries/assets-windows/NsisMultiUser/Common/Utils.nsh b/make_binaries/assets-windows/NsisMultiUser/Common/Utils.nsh new file mode 100644 index 00000000..369bf52e --- /dev/null +++ b/make_binaries/assets-windows/NsisMultiUser/Common/Utils.nsh @@ -0,0 +1,121 @@ +!include WinCore.nsh +!include LogicLib.nsh +!include x64.nsh + +!macro CheckPlatform PLATFORM + ${if} ${RunningX64} + !if ${PLATFORM} == "Win32" + MessageBox MB_ICONSTOP "Please, run the 64-bit installer of ${PRODUCT_NAME} on this version of Windows." /SD IDOK + Quit ; will SetErrorLevel 2 - Installation aborted by script + !endif + ${else} + !if ${PLATFORM} == "Win64" + MessageBox MB_ICONSTOP "Please, run the 32-bit installer of ${PRODUCT_NAME} on this version of Windows." /SD IDOK + Quit ; will SetErrorLevel 2 - Installation aborted by script + !endif + ${endif} +!macroend + +!macro CheckMinWinVer MIN_WIN_VER + ${ifnot} ${AtLeastWin${MIN_WIN_VER}} + MessageBox MB_ICONSTOP "This program requires at least Windows ${MIN_WIN_VER}." /SD IDOK + Quit ; will SetErrorLevel 2 - Installation aborted by script + ${endif} +!macroend + +!macro CheckSingleInstanceFunc UNINSTALLER_PREFIX + ; parameters: + ; $0 - TYPE - "Setup" or "Application" + ; $1 - SCOPE - "Global" or "Local" (default if empty) + ; $2 - MUTEX_NAME - unique mutex name + Function ${UNINSTALLER_PREFIX}CheckSingleInstance + Push $3 + Push $4 + Push $5 + + ${if} $1 == "" + StrCpy $1 "Local" + ${endif} + + ${if} $0 == "Setup" + StrCpy $5 "The setup of ${PRODUCT_NAME}" + ${else} + StrCpy $5 "${PRODUCT_NAME}" + ${endif} + + try: + System::Call 'kernel32::CreateMutex(i 0, i 0, t "$1\$2") i .r3 ?e' + Pop $4 ; the stack contains the result of GetLastError + + ${if} $0 == "Application" + ${andif} $3 <> 0 + System::Call 'kernel32::CloseHandle(i $3)' ; close the Application mutex + ${endif} + + ${if} $4 = ${ERROR_ALREADY_EXISTS} + ${orif} $4 = ${ERROR_ACCESS_DENIED} ; ERROR_ACCESS_DENIED means the mutex was created by another user and we don't have access to open it, so application is running + ; will display NSIS taskbar button, no way to hide it before GUIInit, $HWNDPARENT is 0 + MessageBox MB_RETRYCANCEL|MB_ICONEXCLAMATION "$5 is already running.$\r$\n\ + Please, close all instances of it and click Retry to continue, or Cancel to exit." /SD IDCANCEL IDCANCEL cancel + System::Call 'kernel32::CloseHandle(i $3)' ; for next CreateMutex call to succeed + Goto try + + cancel: + Quit ; will SetErrorLevel 2 - Installation aborted by script + ${endif} + + Pop $5 + Pop $4 + Pop $3 + FunctionEnd +!macroend + +!macro DeleteRetryAbortFunc UNINSTALLER_PREFIX + ; parameters: + ; $0 - FILE_NAME - file to delete + Function ${UNINSTALLER_PREFIX}DeleteRetryAbort + ; unlike the File instruction, Delete doesn't abort (un)installation on error - it just sets the error flag and skips the file as if nothing happened + try: + ClearErrors + Delete $0 + ${if} ${errors} + MessageBox MB_RETRYCANCEL|MB_ICONEXCLAMATION "Error deleting file:$\r$\n$\r$\n$0$\r$\n$\r$\nClick Retry to try again, or$\r$\nCancel to stop the uninstall." /SD IDCANCEL IDRETRY try + Abort "Error deleting file $0" ; when called from section, will SetErrorLevel 2 - Installation aborted by script + ${endif} + FunctionEnd +!macroend + +!macro DeleteRetryAbort FILE_NAME + Push $0 + + StrCpy $0 "${FILE_NAME}" + !ifndef __UNINSTALL__ + Call DeleteRetryAbort + !else + Call un.DeleteRetryAbort + !endif + + Pop $0 +!macroend + +!macro CheckSingleInstance TYPE SCOPE MUTEX_NAME + Push $0 + Push $1 + Push $2 + + StrCpy $0 "${TYPE}" + StrCpy $1 "${SCOPE}" + StrCpy $2 "${MUTEX_NAME}" + !ifndef __UNINSTALL__ + Call CheckSingleInstance + !else + Call un.CheckSingleInstance + !endif + + Pop $2 + Pop $1 + Pop $0 +!macroend + +!insertmacro DeleteRetryAbortFunc "" +!insertmacro CheckSingleInstanceFunc "" diff --git a/make_binaries/assets-windows/NsisMultiUser/Common/un.Utils.nsh b/make_binaries/assets-windows/NsisMultiUser/Common/un.Utils.nsh new file mode 100644 index 00000000..c499e3dc --- /dev/null +++ b/make_binaries/assets-windows/NsisMultiUser/Common/un.Utils.nsh @@ -0,0 +1,2 @@ +!insertmacro DeleteRetryAbortFunc "un." +!insertmacro CheckSingleInstanceFunc "un." diff --git a/make_binaries/assets-windows/NsisMultiUser/Include/NsisMultiUser.nsh b/make_binaries/assets-windows/NsisMultiUser/Include/NsisMultiUser.nsh new file mode 100644 index 00000000..33d3a885 --- /dev/null +++ b/make_binaries/assets-windows/NsisMultiUser/Include/NsisMultiUser.nsh @@ -0,0 +1,1169 @@ +/* + +NsisMultiUser.nsh - NSIS plugin that allows "per-user" (no admin required) and "per-machine" (asks elevation *only when necessary*) installations + +Full source code, documentation and demos at https://github.com/Drizin/NsisMultiUser/ + +Copyright 2016-2018 Ricardo Drizin, Alex Mitev + +*/ + +!verbose push +!verbose 3 + +; Standard NSIS header files +!include WinCore.nsh +!include nsDialogs.nsh +!include LogicLib.nsh +!include x64.nsh +!include WinVer.nsh +!include FileFunc.nsh +!include UAC.nsh +!include StrFunc.nsh + +RequestExecutionLevel user ; will ask elevation only if necessary + +; exit and error codes +!define MULTIUSER_ERROR_INVALID_PARAMETERS 666660 ; invalid command-line parameters +!define MULTIUSER_ERROR_ELEVATION_NOT_ALLOWED 666661 ; elevation is restricted by MULTIUSER_INSTALLMODE_ALLOW_ELEVATION or MULTIUSER_INSTALLMODE_ALLOW_ELEVATION_IF_SILENT +!define MULTIUSER_ERROR_NOT_INSTALLED 666662 ; returned from uninstaller when no version is installed +!define MULTIUSER_ERROR_RUN_UNINSTALLER_FAILED 666663 ; returned from installer if executing the uninstaller failed +!define MULTIUSER_ERROR_ELEVATION_FAILED 666666 ; returned by the outer instance when the inner instance cannot start (user aborted elevation dialog, Logon service not running, UAC is not supported by the OS, user without admin priv. is used in the runas dialog), or started, but was not admin +!define MULTIUSER_INNER_INSTANCE_BACK 666667 ; returned by the inner instance when the user presses the Back button on the first visible page (display outer instance) + +!macro MULTIUSER_INIT_VARS + ; required defines + !ifndef PRODUCT_NAME | VERSION | PROGEXE + !error "Should define all variables: PRODUCT_NAME, VERSION, PROGEXE" + !endif + + ; optional defines + ; COMPANY_NAME - stored in uninstall info in registry + ; CONTACT - stored in uninstall info in registry + ; COMMENTS - stored in uninstall info in registry + ; URL_INFO_ABOUT - stored as the Support Link in the uninstall info of the registry, and when not included, the Help Link as well. + ; URL_HELP_LINK - stored as the Help Link in the uninstall info of the registry. + ; URL_UPDATE_INFO - stored as the Update Information in the uninstall info of the registry. + ; MULTIUSER_INSTALLMODE_NO_HELP_DIALOG - don't show help dialog + + !define /ifndef MULTIUSER_INSTALLMODE_ALLOW_BOTH_INSTALLATIONS 1 ; 0 or 1 - whether user can install BOTH per-user and per-machine; this only affects the texts and the required elevation on the page, the actual uninstall of previous version has to be implemented by script + !define /ifndef MULTIUSER_INSTALLMODE_ALLOW_ELEVATION 1 ; 0 or 1, allow UAC screens in the (un)installer - if set to 0 and user is not admin, per-machine radiobutton will be disabled, or if elevation is always required, (un)installer will exit with an error code (and message if not silent) + !if "${MULTIUSER_INSTALLMODE_ALLOW_ELEVATION}" == "" ; old code - just defined with no value, equivalent to 1 + !define /redef MULTIUSER_INSTALLMODE_ALLOW_ELEVATION 1 + !endif + !define /ifndef MULTIUSER_INSTALLMODE_ALLOW_ELEVATION_IF_SILENT 0 ; 0 or 1, (only available if MULTIUSER_INSTALLMODE_ALLOW_ELEVATION = 1) allow UAC screens in the (un)installer in silent mode; if set to 0 and user is not admin and elevation is always required, (un)installer will exit with an error code + !if ${MULTIUSER_INSTALLMODE_ALLOW_ELEVATION} = 0 + !if ${MULTIUSER_INSTALLMODE_ALLOW_ELEVATION_IF_SILENT} = 1 + !error "MULTIUSER_INSTALLMODE_ALLOW_ELEVATION_IF_SILENT can be set only when MULTIUSER_INSTALLMODE_ALLOW_ELEVATION is set!" + !endif + !endif + !define /ifndef MULTIUSER_INSTALLMODE_DEFAULT_ALLUSERS 0 ; 0 or 1, (only available if MULTIUSER_INSTALLMODE_ALLOW_ELEVATION = 1 and there are 0 or 2 installations on the system) when running as user and is set to 1, per-machine installation is pre-selected, otherwise per-user installation + !if "${MULTIUSER_INSTALLMODE_DEFAULT_ALLUSERS}" == "" ; old code - just defined with no value, equivalent to 1 + !define /redef MULTIUSER_INSTALLMODE_DEFAULT_ALLUSERS 1 + !endif + !define /ifndef MULTIUSER_INSTALLMODE_DEFAULT_CURRENTUSER 0 ; 0 or 1, (only available if there are 0 or 2 installations on the system) when running as admin and is set to 1, per-user installation is pre-selected, otherwise per-machine installation + !if "${MULTIUSER_INSTALLMODE_DEFAULT_CURRENTUSER}" == "" ; old code - just defined with no value, equivalent to 1 + !define /redef MULTIUSER_INSTALLMODE_DEFAULT_CURRENTUSER 1 + !endif + !define /ifndef MULTIUSER_INSTALLMODE_64_BIT 0 ; set to 1 for 64-bit installers + !define /ifndef MULTIUSER_INSTALLMODE_INSTDIR "${PRODUCT_NAME}" ; suggested name of directory to install (under $PROGRAMFILES32/$PROGRAMFILES64 or $LOCALAPPDATA\Programs) + + !define /ifndef MULTIUSER_INSTALLMODE_UNINSTALL_REGISTRY_KEY "${PRODUCT_NAME}" ; registry key for UNINSTALL info, placed under [HKLM|HKCU]\Software\Microsoft\Windows\CurrentVersion\Uninstall (can be ${PRODUCT_NAME} or some {GUID}) + !define /ifndef MULTIUSER_INSTALLMODE_INSTALL_REGISTRY_KEY "Microsoft\Windows\CurrentVersion\Uninstall\${MULTIUSER_INSTALLMODE_UNINSTALL_REGISTRY_KEY}" ; registry key where InstallLocation is stored, placed under [HKLM|HKCU]\Software (can be ${PRODUCT_NAME} or some {GUID}) + !define MULTIUSER_INSTALLMODE_UNINSTALL_REGISTRY_KEY_PATH "Software\Microsoft\Windows\CurrentVersion\Uninstall\${MULTIUSER_INSTALLMODE_UNINSTALL_REGISTRY_KEY}" ; full path to registry key storing uninstall information displayed in Windows installed programs list + !define MULTIUSER_INSTALLMODE_INSTALL_REGISTRY_KEY_PATH "Software\${MULTIUSER_INSTALLMODE_INSTALL_REGISTRY_KEY}" ; full path to registry key where InstallLocation is stored + !define /ifndef UNINSTALL_FILENAME "uninstall.exe" ; name of uninstaller + !define /ifndef MULTIUSER_INSTALLMODE_DISPLAYNAME "${PRODUCT_NAME} ${VERSION}" ; display name in Windows uninstall list of programs + !define /ifndef MULTIUSER_INSTALLMODE_INSTDIR_REGISTRY_VALUENAME "InstallLocation" ; name of the registry value containing install directory + + !ifdef MULTIUSER_INSTALLMODE_FUNCTION + !define MULTIUSER_INSTALLMODE_CHANGE_MODE_FUNCTION ${MULTIUSER_INSTALLMODE_FUNCTION} ; old code - changed function name + !undef MULTIUSER_INSTALLMODE_FUNCTION + !endif + + ; Variables + Var MultiUser.Privileges ; Current user level: "Admin", "Power" (up to Windows XP), or else regular user. + Var MultiUser.InstallMode ; Current Install Mode ("AllUsers" or "CurrentUser") + Var IsAdmin ; 0 or 1, initialized via UserInfo::GetAccountType + Var IsInnerInstance ; 0 or 1, initialized via UAC_IsInnerInstance + Var HasPerMachineInstallation ; 0 or 1 + Var HasPerUserInstallation ; 0 or 1 + Var HasCurrentModeInstallation ; 0 or 1 + Var PerMachineInstallationVersion ; contains version number of empty string "" + Var PerUserInstallationVersion ; contains version number of empty string "" + Var PerMachineInstallationFolder + Var PerUserInstallationFolder + Var PerMachineUninstallString + Var PerUserUninstallString + Var PerMachineOptionAvailable ; 0 or 1: 0 means only per-user radio button is enabled on page, 1 means both; will be 0 only when MULTIUSER_INSTALLMODE_ALLOW_ELEVATION = 0 and user is not admin + Var InstallShowPagesBeforeComponents ; 0 or 1, when 0, use it to hide all pages before Components inside the installer when running as inner instance + Var DisplayDialog ; (internal) + Var PreFunctionCalled ; (internal) + Var CmdLineInstallMode ; contains command-line install mode set via /allusers and /currentusers parameters + Var CmdLineDir ; contains command-line directory set via /D parameter + + ; interface variables + Var MultiUser.InstallModePage + Var MultiUser.InstallModePage.Text + Var MultiUser.InstallModePage.AllUsers + Var MultiUser.InstallModePage.CurrentUser + !ifdef UMUI_SYSVERSION + Var MultiUser.InstallModePage.AllUsersLabel + Var MultiUser.InstallModePage.CurrentUserLabel + !endif + Var MultiUser.InstallModePage.Description +!macroend + +!macro MULTIUSER_UNINIT_VARS + !ifdef MULTIUSER_INSTALLMODE_UNFUNCTION + !define MULTIUSER_INSTALLMODE_CHANGE_MODE_FUNCTION ${MULTIUSER_INSTALLMODE_UNFUNCTION} ; old code - changed function name + !undef MULTIUSER_INSTALLMODE_UNFUNCTION + !else ifdef MULTIUSER_INSTALLMODE_CHANGE_MODE_UNFUNCTION + !define MULTIUSER_INSTALLMODE_CHANGE_MODE_FUNCTION ${MULTIUSER_INSTALLMODE_CHANGE_MODE_UNFUNCTION} ; old code - changed function name + !undef MULTIUSER_INSTALLMODE_CHANGE_MODE_UNFUNCTION + !endif + + ; Variables + Var UninstallShowBackButton ; 0 or 1, use it to show/hide the Back button on the first visible page of the uninstaller +!macroend + +/****** Modern UI 2 page ******/ +!macro MULTIUSER_PAGE UNINSTALLER_PREFIX UNINSTALLER_FUNCPREFIX + !ifdef MULTIUSER_${UNINSTALLER_PREFIX}PAGE_INSTALLMODE + !error "You cannot insert MULTIUSER_${UNINSTALLER_PREFIX}PAGE_INSTALLMODE more than once!" + !endif + !define MULTIUSER_${UNINSTALLER_PREFIX}PAGE_INSTALLMODE + + ${${UNINSTALLER_PREFIX}StrRep} + + !insertmacro MULTIUSER_${UNINSTALLER_PREFIX}INIT_VARS + + !ifmacrodef MUI_${UNINSTALLER_PREFIX}PAGE_INIT + !insertmacro MUI_${UNINSTALLER_PREFIX}PAGE_INIT + !endif + + !insertmacro MULTIUSER_FUNCTION_INSTALLMODEPAGE "${UNINSTALLER_PREFIX}" "${UNINSTALLER_FUNCPREFIX}" + + PageEx ${UNINSTALLER_FUNCPREFIX}custom + PageCallbacks ${UNINSTALLER_FUNCPREFIX}MultiUser.InstallModePre ${UNINSTALLER_FUNCPREFIX}MultiUser.InstallModeLeave + PageExEnd + + !ifmacrodef MUI_${UNINSTALLER_PREFIX}PAGE_END + !insertmacro MUI_${UNINSTALLER_PREFIX}PAGE_END ; MUI1 MUI_UNPAGE_END macro + !endif +!macroend + +!macro MULTIUSER_PAGE_INSTALLMODE ; create install page - called by user script + !insertmacro MULTIUSER_PAGE "" "" +!macroend + +!macro MULTIUSER_UNPAGE_INSTALLMODE ; create uninstall page - called by user script + !ifndef MULTIUSER_PAGE_INSTALLMODE + !error "You have to insert MULTIUSER_PAGE_INSTALLMODE before MULTIUSER_UNPAGE_INSTALLMODE!" + !endif + !insertmacro MULTIUSER_PAGE "UN" "un." +!macroend + +/****** Installer/uninstaller initialization ******/ +!macro MULTIUSER_LANGUAGE_INIT ; called by user script after the last MUI_LANGUAGE call + !include "NsisMultiUserLang.nsh" +!macroend + +!macro MULTIUSER_INIT ; called by user script in .onInit (after MULTIUSER_PAGE_INSTALLMODE) + !ifdef MULTIUSER_INIT + !error "MULTIUSER_INIT already inserted!" + !endif + !define MULTIUSER_INIT + + !ifndef MULTIUSER_PAGE_INSTALLMODE + !error "You have to insert MULTIUSER_PAGE_INSTALLMODE!" + !endif + + Call MultiUser.InitChecks +!macroend + +!macro MULTIUSER_UNINIT ; called by user script in un.onInit (after MULTIUSER_UNPAGE_INSTALLMODE) + !ifdef MULTIUSER_UNINIT + !error "MULTIUSER_UNINIT already inserted!" + !endif + !define MULTIUSER_UNINIT + + !ifndef MULTIUSER_PAGE_INSTALLMODE | MULTIUSER_UNPAGE_INSTALLMODE + !error "You have to insert both MULTIUSER_PAGE_INSTALLMODE and MULTIUSER_UNPAGE_INSTALLMODE!" + !endif + + Call un.MultiUser.InitChecks +!macroend + +!macro MULTIUSER_SET_ERROR ERROR ; only use in MultiUser.InitChecks! + SetErrorLevel ${ERROR} + ${if} ${silent} + Quit + ${else} + StrCpy $InstallShowPagesBeforeComponents 0 + System::Store L + Return + ${endif} +!macroend + +/****** Functions ******/ +!macro MULTIUSER_FUNCTION_INSTALLMODEPAGE UNINSTALLER_PREFIX UNINSTALLER_FUNCPREFIX + Function ${UNINSTALLER_FUNCPREFIX}MultiUser.InstallMode.AllUsers + ${if} $MultiUser.InstallMode == "AllUsers" + Return + ${endif} + + StrCpy $MultiUser.InstallMode "AllUsers" + + SetShellVarContext all + + StrCpy $HasCurrentModeInstallation "$HasPerMachineInstallation" + + ${if} $CmdLineDir != "" + StrCpy $INSTDIR $CmdLineDir + ${elseif} $PerMachineInstallationFolder != "" + StrCpy $INSTDIR $PerMachineInstallationFolder + ${else} + !if "${UNINSTALLER_FUNCPREFIX}" == "" + ; Set default installation location for installer + ${if} ${MULTIUSER_INSTALLMODE_64_BIT} = 0 + StrCpy $INSTDIR "$PROGRAMFILES32\${MULTIUSER_INSTALLMODE_INSTDIR}" + ${else} + StrCpy $INSTDIR "$PROGRAMFILES64\${MULTIUSER_INSTALLMODE_INSTDIR}" + ${endif} + !endif + ${endif} + + !ifdef MULTIUSER_INSTALLMODE_CHANGE_MODE_FUNCTION + Call "${MULTIUSER_INSTALLMODE_CHANGE_MODE_FUNCTION}" + !endif + FunctionEnd + + Function ${UNINSTALLER_FUNCPREFIX}MultiUser.InstallMode.CurrentUser + ${if} $MultiUser.InstallMode == "CurrentUser" + Return + ${endif} + + StrCpy $MultiUser.InstallMode "CurrentUser" + + SetShellVarContext current + + StrCpy $HasCurrentModeInstallation "$HasPerUserInstallation" + + ${if} $CmdLineDir != "" + StrCpy $INSTDIR $CmdLineDir + ${elseif} $PerUserInstallationFolder != "" + StrCpy $INSTDIR $PerUserInstallationFolder + ${else} + !if "${UNINSTALLER_FUNCPREFIX}" == "" + ; Set default installation location for installer + ${if} "$LOCALAPPDATA" != "" + GetKnownFolderPath $INSTDIR ${FOLDERID_UserProgramFiles} ; exists on Win7 and later + ${if} "$INSTDIR" == "" + ; There is a shfolder.dll that emulates CSIDL_LOCAL_APPDATA for older versions of shell32.dll which doesn't support it (pre-Win2k versions) + ; This shfolder.dll is bundeled with IE5 (or as part of Platform SDK Redistributable) that can be installed on NT4 and NSIS (at least since v3.01) will use it instead of shell32.dll if it is available + StrCpy $INSTDIR "$LOCALAPPDATA\Programs\${MULTIUSER_INSTALLMODE_INSTDIR}" + ${else} + StrCpy $INSTDIR "$INSTDIR\${MULTIUSER_INSTALLMODE_INSTDIR}" + ${endif} + ${else} + ; When shfolder.dll is unavailable on NT4 (and so $LOCALAPPDATA returns nothing), local AppData path can still be queried here using registry + ReadRegStr $INSTDIR HKCU "SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders" "Local AppData" + ${if} "$INSTDIR" == "" + StrCpy $INSTDIR "$PROGRAMFILES32\${MULTIUSER_INSTALLMODE_INSTDIR}" ; there's no 64-bit of Windows before 2000 (i.e. NT4) + ${else} + StrCpy $INSTDIR "$INSTDIR\${MULTIUSER_INSTALLMODE_INSTDIR}" + ${endif} + ${endif} + !endif + ${endif} + + !ifdef MULTIUSER_INSTALLMODE_CHANGE_MODE_FUNCTION + Call "${MULTIUSER_INSTALLMODE_CHANGE_MODE_FUNCTION}" + !undef MULTIUSER_INSTALLMODE_CHANGE_MODE_FUNCTION + !endif + FunctionEnd + + Function ${UNINSTALLER_FUNCPREFIX}MultiUser.GetPos + StrCpy $2 $PreFunctionCalled ; if not PreFunctionCalled, we cannot get position + + ${if} $2 = 1 + System::Call "*(i, i, i, i) p .r3" ; allocate RECT struct + + System::Call "User32::GetWindowRect(p $HWNDPARENT, i r3)" + + System::Call '*$3(i .r0, i .r1, i, i)' + + System::Free $3 + ${endif} + FunctionEnd + + Function ${UNINSTALLER_FUNCPREFIX}MultiUser.SetPos + System::Call "User32::SetWindowPos(p $HWNDPARENT, i 0, i $0, i $1, i 0, i 0, i 0x5)" + FunctionEnd + + Function ${UNINSTALLER_FUNCPREFIX}MultiUser.CheckPageElevationRequired + ; check if elevation on page is always required, return result in $0 + ; when this function is called from InitChecks, InstallMode is "" + ; and when called from InstallModeLeave/SetShieldsAndTexts, InstallMode is not empty + StrCpy $0 0 + ${if} $IsAdmin = 0 + ${if} $MultiUser.InstallMode == "AllUsers" + StrCpy $0 1 + ${else} + !if "${UNINSTALLER_FUNCPREFIX}" == "" ; installer + !if ${MULTIUSER_INSTALLMODE_ALLOW_BOTH_INSTALLATIONS} = 0 + ${if} $HasPerMachineInstallation = 1 + ${andif} $HasPerUserInstallation = 0 + ; has to uninstall the per-machine installation, which requires admin rights + ; but signle-user installs of standard users shouldn't be elevated (run as another user) + StrCpy $0 2 + ${endif} + !endif + !endif + ${endif} + ${endif} + FunctionEnd + + Function ${UNINSTALLER_FUNCPREFIX}MultiUser.CheckElevationAllowed + ${if} ${silent} + StrCpy $0 "${MULTIUSER_INSTALLMODE_ALLOW_ELEVATION_IF_SILENT}" + ${else} + StrCpy $0 "${MULTIUSER_INSTALLMODE_ALLOW_ELEVATION}" + ${endif} + FunctionEnd + + Function ${UNINSTALLER_FUNCPREFIX}MultiUser.Elevate + Call ${UNINSTALLER_FUNCPREFIX}MultiUser.CheckElevationAllowed + + ${if} $0 = 0 + Return + ${endif} + + HideWindow + !insertmacro UAC_RunElevated + ${if} $0 = 0 + ; if inner instance was started ($1 = 1), return code of the elevated fork process is in $2 as well as set via SetErrorLevel + ; NOTE: the error level may have a value MULTIUSER_ERROR_ELEVATION_FAILED (but not MULTIUSER_ERROR_ELEVATION_NOT_ALLOWED) + ${if} $1 <> 1 ; process did not start - return MULTIUSER_ERROR_ELEVATION_FAILED + SetErrorLevel ${MULTIUSER_ERROR_ELEVATION_FAILED} + ${endif} + ${else} ; process did not start - return MULTIUSER_ERROR_ELEVATION_FAILED or Win32 error code stored in $0 + ${if} $0 = 1223 ; user aborted elevation dialog - translate to MULTIUSER_ERROR_ELEVATION_FAILED for easier processing + ${orif} $0 = 1062 ; Logon service not running - translate to MULTIUSER_ERROR_ELEVATION_FAILED for easier processing + StrCpy $0 ${MULTIUSER_ERROR_ELEVATION_FAILED} + ${endif} + SetErrorLevel $0 + ${endif} + Quit + FunctionEnd + + Function ${UNINSTALLER_FUNCPREFIX}MultiUser.InitChecks + System::Store S + + ; Installer initialization - check privileges and set default install mode + StrCpy $MultiUser.InstallMode "" + StrCpy $PerMachineOptionAvailable 1 + StrCpy $InstallShowPagesBeforeComponents 1 + StrCpy $DisplayDialog 1 + StrCpy $PreFunctionCalled 0 + StrCpy $CmdLineInstallMode "" + StrCpy $CmdLineDir "" + + ${if} ${RunningX64} ; fix for https://github.com/Drizin/NsisMultiUser/issues/11 + ${if} ${MULTIUSER_INSTALLMODE_64_BIT} = 0 + ; HKLM\Software\Microsoft\Windows\CurrentVersion\Uninstall gets redirected to HKLM\SOFTWARE\WOW6432Node\Microsoft\Windows\CurrentVersion\Uninstall, + ; for HKCU there's no redirection + SetRegView 32 ; someday, when NSIS is 64-bit... + ${else} + SetRegView 64 + ${endif} + ${endif} + + UserInfo::GetAccountType + Pop $MultiUser.Privileges + ${if} $MultiUser.Privileges == "Admin" + ${orif} $MultiUser.Privileges == "Power" ; under XP (and earlier?), Power users can install programs, but UAC_IsAdmin returns false + StrCpy $IsAdmin 1 + ${else} + StrCpy $IsAdmin 0 + ${endif} + + ${if} ${UAC_IsInnerInstance} + StrCpy $IsInnerInstance 1 + ${else} + StrCpy $IsInnerInstance 0 + ${endif} + + ; initialize PerXXXInstallationFolder, PerXXXInstallationVersion, PerXXXUninstallString variables + ReadRegStr $PerMachineInstallationFolder HKLM "${MULTIUSER_INSTALLMODE_INSTALL_REGISTRY_KEY_PATH}" "${MULTIUSER_INSTALLMODE_INSTDIR_REGISTRY_VALUENAME}" ; "InstallLocation" + ReadRegStr $PerMachineInstallationVersion HKLM "${MULTIUSER_INSTALLMODE_UNINSTALL_REGISTRY_KEY_PATH}" "DisplayVersion" + ReadRegStr $PerMachineUninstallString HKLM "${MULTIUSER_INSTALLMODE_UNINSTALL_REGISTRY_KEY_PATH}" "UninstallString" ; contains the /currentuser or /allusers parameter + ${if} $PerMachineInstallationFolder == "" + StrCpy $HasPerMachineInstallation 0 + ${else} + StrCpy $HasPerMachineInstallation 1 + ${endif} + + ; Using UAC_AsUser_Call macro, so that the inner instance will read the registry of the correct user when a different account is used for elevation. + ; The values are first read into registers and passed to the variables later on, because the UAC_AsUser_GetGlobalVar macro doesn't work for the uninstaller. + !insertmacro UAC_AsUser_Call Label get_user_values ${UAC_SYNCREGISTERS} + Goto set_user_vars + get_user_values: + ReadRegStr $R0 HKCU "${MULTIUSER_INSTALLMODE_INSTALL_REGISTRY_KEY_PATH}" "${MULTIUSER_INSTALLMODE_INSTDIR_REGISTRY_VALUENAME}" ; "InstallLocation" + !insertmacro MULTIUSER_GetCurrentUserString $0 + ReadRegStr $R1 HKCU "${MULTIUSER_INSTALLMODE_UNINSTALL_REGISTRY_KEY_PATH}$0" "DisplayVersion" + ReadRegStr $R2 HKCU "${MULTIUSER_INSTALLMODE_UNINSTALL_REGISTRY_KEY_PATH}$0" "UninstallString" ; contains the /currentuser or /allusers parameter + ${if} $R0 == "" + StrCpy $R3 0 + ${else} + StrCpy $R3 1 + ${if} $R1 == "" + ${andif} $0 != "" + ; support old versions that did not have MULTIUSER_GetCurrentUserString + ReadRegStr $R1 HKCU "${MULTIUSER_INSTALLMODE_UNINSTALL_REGISTRY_KEY_PATH}" "DisplayVersion" + ReadRegStr $R2 HKCU "${MULTIUSER_INSTALLMODE_UNINSTALL_REGISTRY_KEY_PATH}" "UninstallString" ; contains the /currentuser or /allusers parameter + ${endif} + ${endif} + Return + set_user_vars: + StrCpy $PerUserInstallationFolder $R0 + StrCpy $PerUserInstallationVersion $R1 + StrCpy $PerUserUninstallString $R2 + StrCpy $HasPerUserInstallation $R3 + + ; get all parameters + ${GetParameters} $R0 + + ; initialize CmdLineInstallMode and CmdLineDir, needed also if we are the inner instance (UAC passes all parameters from the outer instance) + ; note: the loading of the /D parameter depends on AllowRootDirInstall, see https://sourceforge.net/p/nsis/bugs/1176/ + ${GetOptions} $R0 "/allusers" $R1 + ${ifnot} ${errors} + StrCpy $CmdLineInstallMode "AllUsers" + ${endif} + + ${GetOptions} $R0 "/currentuser" $R1 + ${ifnot} ${errors} + ${if} $CmdLineInstallMode != "" + !insertmacro MULTIUSER_SET_ERROR ${MULTIUSER_ERROR_INVALID_PARAMETERS} + ${endif} + StrCpy $CmdLineInstallMode "CurrentUser" + ${endif} + + !if "${UNINSTALLER_FUNCPREFIX}" == "" + ${if} "$INSTDIR" != "" ; if $INSTDIR is not empty here in the installer, it's initialized with the value of the /D command-line parameter + StrCpy $CmdLineDir "$INSTDIR" + ${endif} + !endif + + ; initialize $InstallShowPagesBeforeComponents and $UninstallShowBackButton + !if "${UNINSTALLER_FUNCPREFIX}" == "" + ${if} $IsInnerInstance = 1 + StrCpy $InstallShowPagesBeforeComponents 0 ; we hide pages only if we're the inner instance (the outer instance always shows them) + ${endif} + !else + ${if} $CmdLineInstallMode == "" + ${andif} $HasPerMachineInstallation = 1 + ${andif} $HasPerUserInstallation = 1 + StrCpy $UninstallShowBackButton 1 ; make sure we show Back button only if dialog was displayed, i.e. uninstaller did not elevate in the beginning (see when MultiUser.Elevate is called) + ${else} + StrCpy $UninstallShowBackButton 0 + ${endif} + !endif + + ${if} $IsInnerInstance = 1 + ; check if the inner instance has admin rights + ${if} $IsAdmin = 0 + SetErrorLevel ${MULTIUSER_ERROR_ELEVATION_FAILED} ; special return value for outer instance so it knows we did not have admin rights + Quit + ${endif} + + !if "${UNINSTALLER_FUNCPREFIX}" == "" + ; set language to the one used in the outer instance (installer only, for uninstaller the outer and inner instance might have different language, + ; or there might be no current user installation when the outer uninstaller invokes the inner instance + !insertmacro UAC_AsUser_GetGlobalVar $LANGUAGE + + !if ${MULTIUSER_INSTALLMODE_ALLOW_BOTH_INSTALLATIONS} = 0 + !insertmacro UAC_AsUser_GetGlobal $0 $MultiUser.InstallMode + ${if} $0 == "CurrentUser" + ; the inner instance was elevated because there is installation per-machine, which needs to be removed and requires admin rights, + ; but the user selected per-user installation in the outer instance, set context to CurrentUser + Call MultiUser.InstallMode.CurrentUser + StrCpy $DisplayDialog 0 + System::Store L + Return + ${endif} + !endif + !endif + + Call ${UNINSTALLER_FUNCPREFIX}MultiUser.InstallMode.AllUsers ; Inner Process (and Admin) - set to AllUsers + StrCpy $DisplayDialog 0 + System::Store L + Return + ${endif} + + ; process /? parameter + !ifndef MULTIUSER_INSTALLMODE_NO_HELP_DIALOG ; define MULTIUSER_INSTALLMODE_NO_HELP_DIALOG to display your own help dialog (new options, return codes, etc.) + ${GetOptions} $R0 "/?" $R1 + ${ifnot} ${errors} + MessageBox MB_ICONINFORMATION "Usage:$\r$\n\ + $\r$\n\ + /allusers$\t- (un)install for all users, case-insensitive$\r$\n\ + /currentuser - (un)install for current user only, case-insensitive$\r$\n\ + /uninstall$\t- (installer only) run uninstaller, requires /allusers or /currentuser, case-insensitive$\r$\n\ + /S$\t- silent mode, requires /allusers or /currentuser, case-sensitive$\r$\n\ + /D$\t- (installer only) set install directory, must be last parameter, without quotes, case-sensitive$\r$\n\ + /?$\t- display this message$\r$\n\ + $\r$\n\ + $\r$\n\ + Return codes (decimal):$\r$\n\ + $\r$\n\ + 0$\t- normal execution (no error)$\r$\n\ + 1$\t- (un)installation aborted by user (Cancel button)$\r$\n\ + 2$\t- (un)installation aborted by script$\r$\n\ + 666660$\t- invalid command-line parameters$\r$\n\ + 666661$\t- elevation is not allowed by defines$\r$\n\ + 666662$\t- uninstaller detected there's no installed version$\r$\n\ + 666663$\t- executing uninstaller from the installer failed$\r$\n\ + 666666$\t- cannot start elevated instance$\r$\n\ + other$\t- Windows error code when trying to start elevated instance" + SetErrorLevel 0 + Quit + ${endif} + !endif + + ; process /uninstall parameter + !if "${UNINSTALLER_FUNCPREFIX}" == "" + ${GetOptions} $R0 "/uninstall" $R1 + ${ifnot} ${errors} + ${if} $CmdLineInstallMode == "" + !insertmacro MULTIUSER_SET_ERROR ${MULTIUSER_ERROR_INVALID_PARAMETERS} + ${elseif} $CmdLineInstallMode == "AllUsers" + ${if} $HasPerMachineInstallation = 0 + !insertmacro MULTIUSER_SET_ERROR ${MULTIUSER_ERROR_NOT_INSTALLED} + ${endif} + StrCpy $0 "$PerMachineInstallationFolder" + ${else} + ${if} $HasPerUserInstallation = 0 + !insertmacro MULTIUSER_SET_ERROR ${MULTIUSER_ERROR_NOT_INSTALLED} + ${endif} + StrCpy $0 "$PerUserInstallationFolder" + ${endif} + + ; NOTES: + ; - the _? param stops the uninstaller from copying itself to the temporary directory, which is the only way for waiting to work + ; - $R0 passes the original parameters from the installer to the uninstaller (together with /uninstall so that uninstaller knows installer is running and skips opitional single instance checks) + ; - using ExecWait fails if the new process requires elevation, see http://forums.winamp.com/showthread.php?p=3080202&posted=1#post3080202, so we use ExecShellWait + ExecShellWait "open" "$0\${UNINSTALL_FILENAME}" "$R0 _?=$0" + ${if} ${errors} + SetErrorLevel ${MULTIUSER_ERROR_RUN_UNINSTALLER_FAILED} + ${else} + SetErrorLevel 0 + ${endif} + Quit + ${endif} + !endif + + ; check for limitations + ${if} ${silent} + ${andif} $CmdLineInstallMode == "" + SetErrorLevel ${MULTIUSER_ERROR_INVALID_PARAMETERS} ; one of the /allusers or /currentuser parameters is required in silent mode + Quit + ${endif} + + !if "${UNINSTALLER_FUNCPREFIX}" != "" + ${if} $HasPerMachineInstallation = 0 + ${andif} $HasPerUserInstallation = 0 + !insertmacro MULTIUSER_SET_ERROR ${MULTIUSER_ERROR_NOT_INSTALLED} + ${endif} + !endif + + ; process /allusers and /currentuser parameters (both silent and non-silent mode, installer and uninstaller) + ${if} $CmdLineInstallMode != "" + ${ifnot} ${IsNT} ; Not running Windows NT, (so it's Windows 95/98/ME), so per-user installation not supported + ${andif} $CmdLineInstallMode == "CurrentUser" + !insertmacro MULTIUSER_SET_ERROR ${MULTIUSER_ERROR_INVALID_PARAMETERS} + ${endif} + + ${if} $CmdLineInstallMode == "AllUsers" + Call ${UNINSTALLER_FUNCPREFIX}MultiUser.InstallMode.AllUsers + ${else} + Call ${UNINSTALLER_FUNCPREFIX}MultiUser.InstallMode.CurrentUser + ${endif} + + !if "${UNINSTALLER_FUNCPREFIX}" != "" + ${if} $HasCurrentModeInstallation = 0 + !insertmacro MULTIUSER_SET_ERROR ${MULTIUSER_ERROR_NOT_INSTALLED} + ${endif} + !endif + + !if "${UNINSTALLER_FUNCPREFIX}" != "" + StrCpy $DisplayDialog 0 ; uninstaller - don't display dialog when there is /allusers or /currentuser parameter + !else + ${if} ${silent} + StrCpy $DisplayDialog 0 + ${endif} + !endif + + Call ${UNINSTALLER_FUNCPREFIX}MultiUser.CheckPageElevationRequired + ${if} $0 = 1 + ${if} $DisplayDialog = 0 ; if we are not displaying the dialog (uninstaller or silent mode) and elevation is required, Elevate now (or Quit with an error) + Call ${UNINSTALLER_FUNCPREFIX}MultiUser.Elevate + ${else} + Call ${UNINSTALLER_FUNCPREFIX}MultiUser.CheckElevationAllowed ; if we are displaying the dialog and elevation is required, check if elevation is allowed + ${endif} + ${if} $0 = 0 + !insertmacro MULTIUSER_SET_ERROR ${MULTIUSER_ERROR_ELEVATION_NOT_ALLOWED} + ${endif} + ${endif} + System::Store L + Return + ${endif} + + ; the rest of the code is executed only when there are no /allusers and /currentuser parameters and in non-silent mode + ${ifnot} ${IsNT} ; Not running Windows NT, (so it's Windows 95/98/ME), so per-user installation not supported + Call ${UNINSTALLER_FUNCPREFIX}MultiUser.InstallMode.AllUsers + StrCpy $DisplayDialog 0 + System::Store L + Return + ${endif} + + ; check if elevation on page is always required (installer only) + !if "${UNINSTALLER_FUNCPREFIX}" == "" + Call ${UNINSTALLER_FUNCPREFIX}MultiUser.CheckPageElevationRequired + ${if} $0 = 1 + Call ${UNINSTALLER_FUNCPREFIX}MultiUser.CheckElevationAllowed + ${if} $0 = 0 + !insertmacro MULTIUSER_SET_ERROR ${MULTIUSER_ERROR_ELEVATION_NOT_ALLOWED} + ${endif} + ${endif} + !endif + + ; if elevation is not allowed and user is not admin, disable the per-machine option + !if ${MULTIUSER_INSTALLMODE_ALLOW_ELEVATION} = 0 + ${if} $IsAdmin = 0 + StrCpy $PerMachineOptionAvailable 0 + ${endif} + !endif + + ; if there's only one installed version + ; when uninstaller is invoked from the "add/remove programs", Windows will automatically start uninstaller elevated if uninstall keys are in HKLM + ${if} $HasPerMachineInstallation = 1 + ${andif} $HasPerUserInstallation = 0 + !if "${UNINSTALLER_FUNCPREFIX}" == "" + ${if} $PerMachineOptionAvailable = 1 + Call ${UNINSTALLER_FUNCPREFIX}MultiUser.InstallMode.AllUsers + ${else} + Call ${UNINSTALLER_FUNCPREFIX}MultiUser.InstallMode.CurrentUser + ${endif} + !else + ${if} $IsAdmin = 0 + Call ${UNINSTALLER_FUNCPREFIX}MultiUser.Elevate ; if $PerMachineOptionAvailable = 0 (i.e. MULTIUSER_INSTALLMODE_ALLOW_ELEVATION = 0), Elevate will call CheckElevationAllowed, which checks if MULTIUSER_INSTALLMODE_ALLOW_ELEVATION = 0 + ${if} $0 = 0 + !insertmacro MULTIUSER_SET_ERROR ${MULTIUSER_ERROR_ELEVATION_NOT_ALLOWED} + ${endif} + ${endif} + Call ${UNINSTALLER_FUNCPREFIX}MultiUser.InstallMode.AllUsers + StrCpy $DisplayDialog 0 + !endif + ${elseif} $HasPerMachineInstallation = 0 + ${andif} $HasPerUserInstallation = 1 + Call ${UNINSTALLER_FUNCPREFIX}MultiUser.InstallMode.CurrentUser + !if "${UNINSTALLER_FUNCPREFIX}" != "" + StrCpy $DisplayDialog 0 + !endif + ${else} ; if there is no installed version (installer only), or there are 2 installations - we always display the dialog + ${if} $IsAdmin = 1 ; If running as admin, default to per-machine installation (unless default is forced by MULTIUSER_INSTALLMODE_DEFAULT_CURRENTUSER) + !if ${MULTIUSER_INSTALLMODE_DEFAULT_CURRENTUSER} = 0 + Call ${UNINSTALLER_FUNCPREFIX}MultiUser.InstallMode.AllUsers + !else + Call ${UNINSTALLER_FUNCPREFIX}MultiUser.InstallMode.CurrentUser + !endif + ${else} ; if not running as admin, default to per-user installation (unless default is forced by MULTIUSER_INSTALLMODE_DEFAULT_ALLUSERS) + !if ${MULTIUSER_INSTALLMODE_DEFAULT_ALLUSERS} = 0 + Call ${UNINSTALLER_FUNCPREFIX}MultiUser.InstallMode.CurrentUser + !else + ${if} $PerMachineOptionAvailable = 1 + Call ${UNINSTALLER_FUNCPREFIX}MultiUser.InstallMode.AllUsers + ${else} + Call ${UNINSTALLER_FUNCPREFIX}MultiUser.InstallMode.CurrentUser + ${endif} + !endif + ${endif} + ${endif} + + System::Store L + FunctionEnd + + Function ${UNINSTALLER_FUNCPREFIX}MultiUser.ShowErrorMessage + Push $0 + + GetErrorLevel $0 + + ${if} $0 = -1 + Pop $0 + Return + ${endif} + + ${Switch} $0 + ${Case} ${MULTIUSER_ERROR_INVALID_PARAMETERS} + MessageBox MB_ICONSTOP "$(MULTIUSER_INVALID_PARAMS)" /SD IDOK + Quit + ${Case} ${MULTIUSER_ERROR_NOT_INSTALLED} + MessageBox MB_ICONSTOP "$(MULTIUSER_NOT_INSTALLED)" /SD IDOK + Quit + ${Case} ${MULTIUSER_ERROR_ELEVATION_NOT_ALLOWED} + MessageBox MB_ICONSTOP "$(MULTIUSER_RUN_AS_ADMIN)" /SD IDOK + Quit + ${EndSwitch} + FunctionEnd + + Function ${UNINSTALLER_FUNCPREFIX}MultiUser.InstallModePre + System::Store S + + Call ${UNINSTALLER_FUNCPREFIX}MultiUser.ShowErrorMessage + + ${if} $IsInnerInstance = 1 + ${if} $PreFunctionCalled = 0 ; inner instance is displayed + ; set position of inner instance + !insertmacro UAC_AsUser_Call Function ${UNINSTALLER_FUNCPREFIX}MultiUser.GetPos ${UAC_SYNCREGISTERS} + ${if} $2 = 1 + Call ${UNINSTALLER_FUNCPREFIX}MultiUser.SetPos + ${endif} + ${else} ; user pressed Back button on the first visible page in the inner instance - display outer instance + ; set position of outer instance + Call ${UNINSTALLER_FUNCPREFIX}MultiUser.GetPos + !insertmacro UAC_AsUser_Call Function ${UNINSTALLER_FUNCPREFIX}MultiUser.SetPos ${UAC_SYNCREGISTERS} + + SetErrorLevel ${MULTIUSER_INNER_INSTANCE_BACK} + Quit + ${endif} + ${endif} + StrCpy $PreFunctionCalled 1 + + ${if} $DisplayDialog = 0 + System::Store L + Abort + ${endif} + + !ifmacrodef MUI_HEADER_TEXT + !if "${UNINSTALLER_FUNCPREFIX}" == "" + !insertmacro MUI_HEADER_TEXT "$(MULTIUSER_PAGE_TITLE)" "$(MULTIUSER_INSTALL_PAGE_SUBTITLE)" + !else + !insertmacro MUI_HEADER_TEXT "$(MULTIUSER_PAGE_TITLE)" "$(MULTIUSER_UNINSTALL_PAGE_SUBTITLE)" + !endif + !endif + + !ifdef MUI_PAGE_CUSTOMFUNCTION_PRE + Call "${MUI_PAGE_CUSTOMFUNCTION_PRE}" + !undef MUI_PAGE_CUSTOMFUNCTION_PRE + !endif + nsDialogs::Create 1018 + Pop $MultiUser.InstallModePage + + ; default was MULTIUSER_TEXT_INSTALLMODE_TITLE "Choose Users" + !if "${UNINSTALLER_FUNCPREFIX}" == "" + ${NSD_CreateLabel} 0 0 100% 24u "$(MULTIUSER_INSTALL_HEADER)" + !else + ${NSD_CreateLabel} 0 0 100% 24u "$(MULTIUSER_UNINSTALL_HEADER)" + !endif + Pop $MultiUser.InstallModePage.Text + + !ifdef UMUI_SYSVERSION + StrCpy $0 "$(MULTIUSER_ALL_USERS_UMUI)" + ${NSD_CreateRadioButton} 30u 30% 10u 8u "" + Pop $MultiUser.InstallModePage.AllUsers + + System::Call "advapi32::GetUserName(t. r1, *i ${NSIS_MAX_STRLEN})" + ${${UNINSTALLER_PREFIX}StrRep} "$1" "$(MULTIUSER_CURRENT_USER_UMUI)" "{USER}" "$1" + ${NSD_CreateRadioButton} 30u 45% 10u 8u "" + Pop $MultiUser.InstallModePage.CurrentUser + + ; We create the radio buttons with empty text and create separate labels, because radio button font color can't be changed with XP Styles turned on, + ; which creates problems with UMUI themes, see http://forums.winamp.com/showthread.php?p=3079742#post3079742 + ; shortcuts (&) for labels don't work and cause strange behaviour in NSIS - going to another page, etc. + ${NSD_CreateLabel} 44u 30% 280u 16u "$0" + Pop $MultiUser.InstallModePage.AllUsersLabel + nsDialogs::SetUserData $MultiUser.InstallModePage.AllUsersLabel $MultiUser.InstallModePage.AllUsers + ${NSD_CreateLabel} 44u 45% 280u 8u "$1" + Pop $MultiUser.InstallModePage.CurrentUserLabel + nsDialogs::SetUserData $MultiUser.InstallModePage.CurrentUserLabel $MultiUser.InstallModePage.CurrentUser + + ${if} $PerMachineOptionAvailable = 0 ; install per-machine is not available + SendMessage $MultiUser.InstallModePage.AllUsersLabel ${WM_SETTEXT} 0 "STR:$0$\r$\n($(MULTIUSER_RUN_AS_ADMIN))" ; only when $PerMachineOptionAvailable = 0, we add that comment to the disabled control itself + ${orif} $CmdLineInstallMode != "" + EnableWindow $MultiUser.InstallModePage.AllUsersLabel 0 ; start out disabled + EnableWindow $MultiUser.InstallModePage.AllUsers 0 ; start out disabled + ${endif} + + ${if} $CmdLineInstallMode != "" + EnableWindow $MultiUser.InstallModePage.CurrentUserLabel 0 + EnableWindow $MultiUser.InstallModePage.CurrentUser 0 + ${endif} + + ; bind to label click + ${NSD_OnClick} $MultiUser.InstallModePage.CurrentUserLabel ${UNINSTALLER_FUNCPREFIX}MultiUser.InstallModeOptionLabelClick + ${NSD_OnClick} $MultiUser.InstallModePage.AllUsersLabel ${UNINSTALLER_FUNCPREFIX}MultiUser.InstallModeOptionLabelClick + !else + StrCpy $0 "$(MULTIUSER_ALL_USERS)" + + System::Call "advapi32::GetUserName(t. r1, *i ${NSIS_MAX_STRLEN})" + ${${UNINSTALLER_PREFIX}StrRep} "$1" "$(MULTIUSER_CURRENT_USER)" "{USER}" "$1" + + ${NSD_CreateRadioButton} 30u 30% 280u 16u "$0" + Pop $MultiUser.InstallModePage.AllUsers + + ${NSD_CreateRadioButton} 30u 45% 280u 8u "$1" + Pop $MultiUser.InstallModePage.CurrentUser + + ${if} $PerMachineOptionAvailable = 0 ; install per-machine is not available + SendMessage $MultiUser.InstallModePage.AllUsers ${WM_SETTEXT} 0 "STR:$0$\r$\n($(MULTIUSER_RUN_AS_ADMIN))" ; only when $PerMachineOptionAvailable = 0, we add that comment to the disabled control itself + ${orif} $CmdLineInstallMode != "" + EnableWindow $MultiUser.InstallModePage.AllUsers 0 ; start out disabled + ${endif} + + ${if} $CmdLineInstallMode != "" + EnableWindow $MultiUser.InstallModePage.CurrentUser 0 + ${endif} + !endif + + ; bind to radiobutton change + ${NSD_OnClick} $MultiUser.InstallModePage.CurrentUser ${UNINSTALLER_FUNCPREFIX}MultiUser.InstallModeOptionClick + ${NSD_OnClick} $MultiUser.InstallModePage.AllUsers ${UNINSTALLER_FUNCPREFIX}MultiUser.InstallModeOptionClick + + ${NSD_CreateLabel} 0u -32u 100% 32u "" ; will hold up to 4 lines of text + Pop $MultiUser.InstallModePage.Description + + ${if} $MultiUser.InstallMode == "AllUsers" ; setting selected radio button + SendMessage $MultiUser.InstallModePage.AllUsers ${BM_SETCHECK} ${BST_CHECKED} 0 ; select radio button + ${else} + SendMessage $MultiUser.InstallModePage.CurrentUser ${BM_SETCHECK} ${BST_CHECKED} 0 ; select radio button + ${endif} + Call ${UNINSTALLER_FUNCPREFIX}MultiUser.SetShieldAndTexts ; simulating click on the control will change $INSTDIR and reset a possible user selection + + !ifmacrodef UMUI_IOPAGEBGTRANSPARENT_INIT ; UMUI, apply theme to controls + !ifndef USE_MUIEx ; for MUIEx, applying themes causes artifacts + !insertmacro UMUI_IOPAGEBGTRANSPARENT_INIT $MultiUser.InstallModePage + !insertmacro UMUI_IOPAGECTLTRANSPARENT_INIT $MultiUser.InstallModePage.Text + !insertmacro UMUI_IOPAGECTLTRANSPARENT_INIT $MultiUser.InstallModePage.AllUsers + !insertmacro UMUI_IOPAGECTLTRANSPARENT_INIT $MultiUser.InstallModePage.AllUsersLabel + !insertmacro UMUI_IOPAGECTLTRANSPARENT_INIT $MultiUser.InstallModePage.CurrentUser + !insertmacro UMUI_IOPAGECTLTRANSPARENT_INIT $MultiUser.InstallModePage.CurrentUserLabel + !insertmacro UMUI_IOPAGECTLTRANSPARENT_INIT $MultiUser.InstallModePage.Description + !endif + !endif + + System::Store L + + !ifdef MUI_PAGE_CUSTOMFUNCTION_SHOW + Call "${MUI_PAGE_CUSTOMFUNCTION_SHOW}" + !undef MUI_PAGE_CUSTOMFUNCTION_SHOW + !endif + + nsDialogs::Show + + !if "${UNINSTALLER_FUNCPREFIX}" == "" + Push $0 + GetDlgItem $0 $HWNDPARENT 1 + SendMessage $0 ${BCM_SETSHIELD} 0 0 ; hide SHIELD on page leave (InstallModeLeave is called only on Next button click) + Pop $0 + !endif + FunctionEnd + + Function ${UNINSTALLER_FUNCPREFIX}MultiUser.InstallModeLeave + System::Store S + + !if ${MULTIUSER_INSTALLMODE_ALLOW_ELEVATION} = 1 ; if elevation is allowed + Call ${UNINSTALLER_FUNCPREFIX}MultiUser.CheckPageElevationRequired + + ${if} $0 = 1 + HideWindow + !insertmacro UAC_RunElevated + ;MessageBox MB_OK "[$0]/[$1]/[$2]/[$3]" + + ; http://nsis.sourceforge.net/UAC_plug-in + ${Switch} $0 + ${Case} 0 + ${Switch} $1 + ${Case} 1 ; Started an elevated child process successfully, exit code is in $2 + ${Switch} $2 + ${Case} ${MULTIUSER_ERROR_ELEVATION_FAILED} ; the inner instance was not admin after all - stay on page + MessageBox MB_ICONSTOP "$(MULTIUSER_ADMIN_ACCOUNT_LOGIN_REQUIRED)" /SD IDOK + ${Break} + ${Case} ${MULTIUSER_INNER_INSTANCE_BACK} ; if user pressed Back button on the first visible page of the inner instance - stay on page + ${Break} + ${Default} ; all other cases - Quit + ; return code of the elevated fork process is in $2 as well as set via SetErrorLevel + Quit + ${EndSwitch} + ${Break} + ${Case} 3 ; RunAs completed successfully, but with a non-admin user - stay on page + MessageBox MB_ICONSTOP "$(MULTIUSER_ADMIN_ACCOUNT_LOGIN_REQUIRED)" /SD IDOK + ${Break} + ${Default} ; 0 - UAC is not supported by the OS, OR 2 - The process is already running @ HighIL (Member of admin group) - stay on page + MessageBox MB_ICONSTOP "$(MULTIUSER_ELEVATION_NOT_SUPPORTED)" /SD IDOK + ${EndSwitch} + ${Break} + ${Case} 1223 ; user aborted elevation dialog - stay on page + ${Break} + ${Case} 1062 ; Logon service not running - stay on page + MessageBox MB_ICONSTOP "$(MULTIUSER_LOGON_SERVICE_NOT_RUNNING)" /SD IDOK + ${Break} + ${Default} ; anything else should be treated as a fatal error - stay on page + ${${UNINSTALLER_PREFIX}StrRep} "$0" "$(MULTIUSER_ELEVATION_ERROR)" "{ERROR}" "$0" + MessageBox MB_ICONSTOP "$0" /SD IDOK + ${EndSwitch} + + ; clear the error level set by UAC for inner instance, so that outer instance returns its own error level when exits (the error level is not reset by NSIS if once set and >= 0) + ; see http://forums.winamp.com/showthread.php?p=3079116&posted=1#post3079116 + SetErrorLevel -1 + BringToFront + Abort ; Stay on page + ${endif} + !endif + + System::Store L + + !ifdef MUI_PAGE_CUSTOMFUNCTION_LEAVE + Call "${MUI_PAGE_CUSTOMFUNCTION_LEAVE}" + !undef MUI_PAGE_CUSTOMFUNCTION_LEAVE + !endif + FunctionEnd + + Function ${UNINSTALLER_FUNCPREFIX}MultiUser.SetShieldAndTexts + System::Store S + + StrCpy $0 "$MultiUser.InstallMode" + ; if necessary, display text for different install mode rather than the actual one in $MultiUser.InstallMode + !if ${MULTIUSER_INSTALLMODE_ALLOW_BOTH_INSTALLATIONS} = 0 + !if "${UNINSTALLER_FUNCPREFIX}" == "" + ${if} $MultiUser.InstallMode == "AllUsers" ; user selected "all users" + ${if} $HasPerMachineInstallation = 0 + ${andif} $HasPerUserInstallation = 1 + StrCpy $0 "CurrentUser" ; display information for the "current user" installation + ${endif} + ${elseif} $HasPerMachineInstallation = 1 + ${andif} $HasPerUserInstallation = 0 ; user selected "current user" + StrCpy $0 "AllUsers" ; display information for the "all users" installation + ${endif} + !endif + !endif + + ; set label text + StrCpy $1 "" + ${if} $0 == "AllUsers" ; all users + ${if} $HasPerMachineInstallation = 1 + ${${UNINSTALLER_PREFIX}StrRep} "$1" "$(MULTIUSER_INSTALLED_ALL_USERS)" "{VERSION}" "$PerMachineInstallationVersion" + ${${UNINSTALLER_PREFIX}StrRep} "$1" "$1" "{FOLDER}" "$PerMachineInstallationFolder" + + !if "${UNINSTALLER_FUNCPREFIX}" == "" + ${if} $PerMachineInstallationVersion == "${VERSION}" + ${if} $MultiUser.InstallMode == "AllUsers" + ${${UNINSTALLER_PREFIX}StrRep} "$2" "$(MULTIUSER_REINSTALL_SAME_VERSION_ALL_USERS)" "{VERSION}" "$PerMachineInstallationVersion" + ${else} + ${${UNINSTALLER_PREFIX}StrRep} "$2" "$(MULTIUSER_REINSTALL_SAME_VERSION_CURRENT_USER)" "{VERSION}" "$PerMachineInstallationVersion" + ${endif} + ${else} + ${if} $MultiUser.InstallMode == "AllUsers" + ${${UNINSTALLER_PREFIX}StrRep} "$2" "$(MULTIUSER_REINSTALL_DIFF_VERSION_ALL_USERS)" "{OLD_VERSION}" "$PerMachineInstallationVersion" + ${${UNINSTALLER_PREFIX}StrRep} "$2" "$2" "{VERSION}" "${VERSION}" + ${else} + ${${UNINSTALLER_PREFIX}StrRep} "$2" "$(MULTIUSER_REINSTALL_DIFF_VERSION_CURRENT_USER)" "{OLD_VERSION}" "$PerMachineInstallationVersion" + ${${UNINSTALLER_PREFIX}StrRep} "$2" "$2" "{VERSION}" "${VERSION}" + ${endif} + ${endif} + StrCpy $1 "$1$\r$\n$2" + !endif + ${else} + StrCpy $1 "$(MULTIUSER_NEW_INSTALLATION_ALL_USERS)" + ${endif} + ${else} ; current user + ${if} $HasPerUserInstallation = 1 + ${${UNINSTALLER_PREFIX}StrRep} "$1" "$(MULTIUSER_INSTALLED_CURRENT_USER)" "{VERSION}" "$PerUserInstallationVersion" + ${${UNINSTALLER_PREFIX}StrRep} "$1" "$1" "{FOLDER}" "$PerUserInstallationFolder" + + !if "${UNINSTALLER_FUNCPREFIX}" == "" + ${if} $PerUserInstallationVersion == "${VERSION}" + ${if} $MultiUser.InstallMode == "AllUsers" + ${${UNINSTALLER_PREFIX}StrRep} "$2" "$(MULTIUSER_REINSTALL_SAME_VERSION_ALL_USERS)" "{VERSION}" "$PerUserInstallationVersion" + ${else} + ${${UNINSTALLER_PREFIX}StrRep} "$2" "$(MULTIUSER_REINSTALL_SAME_VERSION_CURRENT_USER)" "{VERSION}" "$PerUserInstallationVersion" + ${endif} + ${else} + ${if} $MultiUser.InstallMode == "AllUsers" + ${${UNINSTALLER_PREFIX}StrRep} "$2" "$(MULTIUSER_REINSTALL_DIFF_VERSION_ALL_USERS)" "{OLD_VERSION}" "$PerUserInstallationVersion" + ${${UNINSTALLER_PREFIX}StrRep} "$2" "$2" "{VERSION}" "${VERSION}" + ${else} + ${${UNINSTALLER_PREFIX}StrRep} "$2" "$(MULTIUSER_REINSTALL_DIFF_VERSION_CURRENT_USER)" "{OLD_VERSION}" "$PerUserInstallationVersion" + ${${UNINSTALLER_PREFIX}StrRep} "$2" "$2" "{VERSION}" "${VERSION}" + ${endif} + ${endif} + StrCpy $1 "$1$\r$\n$2" + !endif + ${else} + StrCpy $1 "$(MULTIUSER_NEW_INSTALLATION_CURRENT_USER)" + ${endif} + ${endif} + + Call ${UNINSTALLER_FUNCPREFIX}MultiUser.CheckPageElevationRequired + ${if} $0 = 1 + StrCpy $1 "$1 $(MULTIUSER_ADMIN_CREDENTIALS_REQUIRED)" + ${elseif} $0 = 2 + StrCpy $1 "$1 $(MULTIUSER_ADMIN_UNINSTALL_CREDENTIALS_REQUIRED)" + StrCpy $0 0 + ${endif} + + SendMessage $MultiUser.InstallModePage.Description ${WM_SETTEXT} 0 "STR:$1" + + GetDlgItem $1 $hwndParent 1 ; get item 1 (next button) at parent window, store in $1 - (0 is back, 1 is next .. what about CANCEL? http://nsis.sourceforge.net/Buttons_Header ) + + SendMessage $1 ${BCM_SETSHIELD} 0 $0 ; display/hide SHIELD (Windows Vista and above) + + System::Store L + FunctionEnd + + !ifdef UMUI_SYSVERSION + Function ${UNINSTALLER_FUNCPREFIX}MultiUser.InstallModeOptionLabelClick + Exch $0 ; get clicked control's HWND, which is on the stack in $0 + nsDialogs::GetUserData $0 + Pop $0 + + ${NSD_Uncheck} $MultiUser.InstallModePage.AllUsers + ${NSD_Uncheck} $MultiUser.InstallModePage.CurrentUser + ${NSD_Check} $0 ; ${NSD_Check} will check both radio buttons without the above 2 lines + ${NSD_SetFocus} $0 + Push $0 + ; ${NSD_Check} doesn't call Click event + Call ${UNINSTALLER_FUNCPREFIX}MultiUser.InstallModeOptionClick + + Pop $0 + FunctionEnd + !endif + + Function ${UNINSTALLER_FUNCPREFIX}MultiUser.InstallModeOptionClick + Exch $0 ; get clicked control's HWND, which is on the stack in $0 + + ; set InstallMode + ${if} $0 = $MultiUser.InstallModePage.AllUsers + Call ${UNINSTALLER_FUNCPREFIX}MultiUser.InstallMode.AllUsers + ${else} + Call ${UNINSTALLER_FUNCPREFIX}MultiUser.InstallMode.CurrentUser + ${endif} + + Call ${UNINSTALLER_FUNCPREFIX}MultiUser.SetShieldAndTexts + + Pop $0 + FunctionEnd +!macroend + +!macro MULTIUSER_GetCurrentUserString VAR + StrCpy ${VAR} "" + !if ${MULTIUSER_INSTALLMODE_ALLOW_BOTH_INSTALLATIONS} <> 0 + ${if} $MultiUser.InstallMode == "CurrentUser" + ${orif} $MultiUser.InstallMode == "" ; called from InitChecks + StrCpy ${VAR} " (current user)" + ${endif} + !endif +!macroend + +!macro MULTIUSER_RegistryAddInstallInfo + Push $0 + Push $1 + Push $2 + Push $3 + Push $4 + + ; Write the installation path into the registry + WriteRegStr SHCTX "${MULTIUSER_INSTALLMODE_INSTALL_REGISTRY_KEY_PATH}" "${MULTIUSER_INSTALLMODE_INSTDIR_REGISTRY_VALUENAME}" "$INSTDIR" ; "InstallLocation" + + ; Write the uninstall keys for Windows + ; Workaround for Windows issue: if the uninstall key names are the same in HKLM and HKCU, Windows displays only one entry in the add/remove programs dialog; + ; this will create 2 different keys in HKCU (MULTIUSER_INSTALLMODE_INSTALL_REGISTRY_KEY_PATH and MULTIUSER_INSTALLMODE_UNINSTALL_REGISTRY_KEY_PATH), + ; but that's OK, both will be removed by uninstaller + !insertmacro MULTIUSER_GetCurrentUserString $0 + + ${if} $MultiUser.InstallMode == "AllUsers" ; setting defaults + WriteRegStr SHCTX "${MULTIUSER_INSTALLMODE_UNINSTALL_REGISTRY_KEY_PATH}" "DisplayName" "${MULTIUSER_INSTALLMODE_DISPLAYNAME}" + WriteRegStr SHCTX "${MULTIUSER_INSTALLMODE_UNINSTALL_REGISTRY_KEY_PATH}" "UninstallString" '"$INSTDIR\${UNINSTALL_FILENAME}" /allusers' + WriteRegStr SHCTX "${MULTIUSER_INSTALLMODE_UNINSTALL_REGISTRY_KEY_PATH}" "QuietUninstallString" '"$INSTDIR\${UNINSTALL_FILENAME}" /allusers /S' + ${else} + WriteRegStr SHCTX "${MULTIUSER_INSTALLMODE_UNINSTALL_REGISTRY_KEY_PATH}$0" "DisplayName" "${MULTIUSER_INSTALLMODE_DISPLAYNAME} (current user)" ; "add/remove programs" will show if installation is per-user + WriteRegStr SHCTX "${MULTIUSER_INSTALLMODE_UNINSTALL_REGISTRY_KEY_PATH}$0" "UninstallString" '"$INSTDIR\${UNINSTALL_FILENAME}" /currentuser' + WriteRegStr SHCTX "${MULTIUSER_INSTALLMODE_UNINSTALL_REGISTRY_KEY_PATH}$0" "QuietUninstallString" '"$INSTDIR\${UNINSTALL_FILENAME}" /currentuser /S' + ${endif} + + WriteRegStr SHCTX "${MULTIUSER_INSTALLMODE_UNINSTALL_REGISTRY_KEY_PATH}$0" "DisplayVersion" "${VERSION}" + WriteRegStr SHCTX "${MULTIUSER_INSTALLMODE_UNINSTALL_REGISTRY_KEY_PATH}$0" "DisplayIcon" "$INSTDIR\${PROGEXE},0" + !ifdef COMPANY_NAME + WriteRegStr SHCTX "${MULTIUSER_INSTALLMODE_UNINSTALL_REGISTRY_KEY_PATH}$0" "Publisher" "${COMPANY_NAME}" + !endif + !ifdef CONTACT + WriteRegStr SHCTX "${MULTIUSER_INSTALLMODE_UNINSTALL_REGISTRY_KEY_PATH}$0" "Contact" "${CONTACT}" + !endif + !ifdef COMMENTS + WriteRegStr SHCTX "${MULTIUSER_INSTALLMODE_UNINSTALL_REGISTRY_KEY_PATH}$0" "Comments" "${COMMENTS}" + !endif + !ifdef URL_INFO_ABOUT + WriteRegStr SHCTX "${MULTIUSER_INSTALLMODE_UNINSTALL_REGISTRY_KEY_PATH}$0" "URLInfoAbout" "${URL_INFO_ABOUT}" + !endif + !ifdef URL_HELP_LINK + WriteRegStr SHCTX "${MULTIUSER_INSTALLMODE_UNINSTALL_REGISTRY_KEY_PATH}$0" "HelpLink" "${URL_HELP_LINK}" + !endif + !ifdef URL_UPDATE_INFO + WriteRegStr SHCTX "${MULTIUSER_INSTALLMODE_UNINSTALL_REGISTRY_KEY_PATH}$0" "URLUpdateInfo" "${URL_UPDATE_INFO}" + !endif + WriteRegDWORD SHCTX "${MULTIUSER_INSTALLMODE_UNINSTALL_REGISTRY_KEY_PATH}$0" "NoModify" 1 + WriteRegDWORD SHCTX "${MULTIUSER_INSTALLMODE_UNINSTALL_REGISTRY_KEY_PATH}$0" "NoRepair" 1 + + ; Write InstallDate string value in 'YYYYMMDD' format. + ; Without it, Windows gets the date from the registry key metadata, which might be inaccurate. + System::Call /NOUNLOAD "*(&i2,&i2,&i2,&i2,&i2,&i2,&i2,&i2) i .r4" + System::Call /NOUNLOAD "kernel32::GetLocalTime(i)i(r4)" + System::Call /NOUNLOAD "*$4(&i2,&i2,&i2,&i2,&i2,&i2,&i2,&i2)i(.r1,.r2,,.r3,,,,)" + System::Free $4 + IntCmp $2 9 0 0 +2 + StrCpy $2 "0$2" + IntCmp $3 9 0 0 +2 + StrCpy $3 "0$3" + WriteRegStr SHCTX "${MULTIUSER_INSTALLMODE_UNINSTALL_REGISTRY_KEY_PATH}$0" "InstallDate" "$1$2$3" + + Pop $4 + Pop $3 + Pop $2 + Pop $1 + Pop $0 +!macroend + +!macro MULTIUSER_RegistryAddInstallSizeInfo + Push $0 + Push $1 + Push $2 + Push $3 + + !insertmacro MULTIUSER_GetCurrentUserString $0 + + ${GetSize} "$INSTDIR" "/S=0K" $1 $2 $3 ; get folder size, convert to KB + IntFmt $1 "0x%08X" $1 + WriteRegDWORD SHCTX "${MULTIUSER_INSTALLMODE_UNINSTALL_REGISTRY_KEY_PATH}$0" "EstimatedSize" "$1" + + Pop $3 + Pop $2 + Pop $1 + Pop $0 +!macroend + +!macro MULTIUSER_RegistryRemoveInstallInfo + Push $0 + + ; Remove registry keys + DeleteRegKey SHCTX "${MULTIUSER_INSTALLMODE_UNINSTALL_REGISTRY_KEY_PATH}" + !insertmacro MULTIUSER_GetCurrentUserString $0 + ${if} "$0" != "" + DeleteRegKey SHCTX "${MULTIUSER_INSTALLMODE_UNINSTALL_REGISTRY_KEY_PATH}$0" + ${endif} + DeleteRegKey SHCTX "${MULTIUSER_INSTALLMODE_INSTALL_REGISTRY_KEY_PATH}" + + Pop $0 +!macroend + +!verbose pop diff --git a/make_binaries/assets-windows/NsisMultiUser/Include/NsisMultiUserLang.nsh b/make_binaries/assets-windows/NsisMultiUser/Include/NsisMultiUserLang.nsh new file mode 100644 index 00000000..ac2bd092 --- /dev/null +++ b/make_binaries/assets-windows/NsisMultiUser/Include/NsisMultiUserLang.nsh @@ -0,0 +1,2038 @@ +!ifdef LANG_ENGLISH + LangString MULTIUSER_PAGE_TITLE ${LANG_ENGLISH} "Choose Users" + LangString MULTIUSER_INSTALL_PAGE_SUBTITLE ${LANG_ENGLISH} "Choose for which users to install $(^NameDA)." + LangString MULTIUSER_UNINSTALL_PAGE_SUBTITLE ${LANG_ENGLISH} "Choose for which users to remove $(^NameDA)." + LangString MULTIUSER_INSTALL_HEADER ${LANG_ENGLISH} "Select whether to install $(^NameDA) for all users or for current user." + LangString MULTIUSER_UNINSTALL_HEADER ${LANG_ENGLISH} "$(^NameDA) is installed both for all users and for current user.$\r$\nSelect which installation to remove." + LangString MULTIUSER_ALL_USERS ${LANG_ENGLISH} "For &anyone who uses this computer (all users)" + LangString MULTIUSER_CURRENT_USER ${LANG_ENGLISH} "For &me ({USER})" + LangString MULTIUSER_ALL_USERS_UMUI ${LANG_ENGLISH} "For anyone who uses this computer (all users)" + LangString MULTIUSER_CURRENT_USER_UMUI ${LANG_ENGLISH} "For me ({USER})" + LangString MULTIUSER_NEW_INSTALLATION_ALL_USERS ${LANG_ENGLISH} "Fresh install for all users." + LangString MULTIUSER_NEW_INSTALLATION_CURRENT_USER ${LANG_ENGLISH} "Fresh install for current user." + LangString MULTIUSER_INSTALLED_ALL_USERS ${LANG_ENGLISH} "Version {VERSION} is installed for all users in $\"{FOLDER}$\"." + LangString MULTIUSER_INSTALLED_CURRENT_USER ${LANG_ENGLISH} "Version {VERSION} is installed for current user in $\"{FOLDER}$\"." + LangString MULTIUSER_REINSTALL_SAME_VERSION_ALL_USERS ${LANG_ENGLISH} "Reinstall version {VERSION} for all users." + LangString MULTIUSER_REINSTALL_SAME_VERSION_CURRENT_USER ${LANG_ENGLISH} "Reinstall version {VERSION} for current user." + LangString MULTIUSER_REINSTALL_DIFF_VERSION_ALL_USERS ${LANG_ENGLISH} "Uninstall version {OLD_VERSION} and install version {VERSION} for all users." + LangString MULTIUSER_REINSTALL_DIFF_VERSION_CURRENT_USER ${LANG_ENGLISH} "Uninstall version {OLD_VERSION} and install version {VERSION} for current user." + LangString MULTIUSER_RUN_AS_ADMIN ${LANG_ENGLISH} "You need to run this program as administrator." + LangString MULTIUSER_ADMIN_CREDENTIALS_REQUIRED ${LANG_ENGLISH} "Administrator credentials required." + LangString MULTIUSER_ADMIN_UNINSTALL_CREDENTIALS_REQUIRED ${LANG_ENGLISH} "Administrator credentials required for uninstall." + ; error messages - not so important + LangString MULTIUSER_INVALID_PARAMS ${LANG_ENGLISH} "Invalid combination of paramaters." + LangString MULTIUSER_NOT_INSTALLED ${LANG_ENGLISH} "There is no installation of $(^NameDA)." + LangString MULTIUSER_INSTALLATION_FOR_CURRENT_USER_NOT_SUPPORTED ${LANG_ENGLISH} "The operating system doesn't support current user installations." + LangString MULTIUSER_ADMIN_ACCOUNT_LOGIN_REQUIRED ${LANG_ENGLISH} "You need to login with an account that is a member of the administrators group to continue." + LangString MULTIUSER_ELEVATION_NOT_SUPPORTED ${LANG_ENGLISH} "The operating system doesn't support elevation." + LangString MULTIUSER_LOGON_SERVICE_NOT_RUNNING ${LANG_ENGLISH} "Unable to elevate, Secondary Logon service not running." + LangString MULTIUSER_ELEVATION_ERROR ${LANG_ENGLISH} "Unable to elevate, error {ERROR}." +!endif + +!ifdef LANG_AFRIKAANS + LangString MULTIUSER_PAGE_TITLE ${LANG_AFRIKAANS} "Choose Users" + LangString MULTIUSER_INSTALL_PAGE_SUBTITLE ${LANG_AFRIKAANS} "Choose for which users to install $(^NameDA)." + LangString MULTIUSER_UNINSTALL_PAGE_SUBTITLE ${LANG_AFRIKAANS} "Choose for which users to remove $(^NameDA)." + LangString MULTIUSER_INSTALL_HEADER ${LANG_AFRIKAANS} "Select whether to install $(^NameDA) for all users or for current user." + LangString MULTIUSER_UNINSTALL_HEADER ${LANG_AFRIKAANS} "$(^NameDA) is installed both for all users and for current user.$\r$\nSelect which installation to remove." + LangString MULTIUSER_ALL_USERS ${LANG_AFRIKAANS} "For &anyone who uses this computer (all users)" + LangString MULTIUSER_CURRENT_USER ${LANG_AFRIKAANS} "For &me ({USER})" + LangString MULTIUSER_ALL_USERS_UMUI ${LANG_AFRIKAANS} "For anyone who uses this computer (all users)" + LangString MULTIUSER_CURRENT_USER_UMUI ${LANG_AFRIKAANS} "For me ({USER})" + LangString MULTIUSER_NEW_INSTALLATION_ALL_USERS ${LANG_AFRIKAANS} "Fresh install for all users." + LangString MULTIUSER_NEW_INSTALLATION_CURRENT_USER ${LANG_AFRIKAANS} "Fresh install for current user." + LangString MULTIUSER_INSTALLED_ALL_USERS ${LANG_AFRIKAANS} "Version {VERSION} is installed for all users in $\"{FOLDER}$\"." + LangString MULTIUSER_INSTALLED_CURRENT_USER ${LANG_AFRIKAANS} "Version {VERSION} is installed for current user in $\"{FOLDER}$\"." + LangString MULTIUSER_REINSTALL_SAME_VERSION_ALL_USERS ${LANG_AFRIKAANS} "Reinstall version {VERSION} for all users." + LangString MULTIUSER_REINSTALL_SAME_VERSION_CURRENT_USER ${LANG_AFRIKAANS} "Reinstall version {VERSION} for current user." + LangString MULTIUSER_REINSTALL_DIFF_VERSION_ALL_USERS ${LANG_AFRIKAANS} "Uninstall version {OLD_VERSION} and install version {VERSION} for all users." + LangString MULTIUSER_REINSTALL_DIFF_VERSION_CURRENT_USER ${LANG_AFRIKAANS} "Uninstall version {OLD_VERSION} and install version {VERSION} for current user." + LangString MULTIUSER_RUN_AS_ADMIN ${LANG_AFRIKAANS} "You need to run this program as administrator." + LangString MULTIUSER_ADMIN_CREDENTIALS_REQUIRED ${LANG_AFRIKAANS} "Administrator credentials required." + LangString MULTIUSER_ADMIN_UNINSTALL_CREDENTIALS_REQUIRED ${LANG_AFRIKAANS} "Administrator credentials required for uninstall." + ; error messages - not so important + LangString MULTIUSER_INVALID_PARAMS ${LANG_AFRIKAANS} "Invalid combination of paramaters." + LangString MULTIUSER_NOT_INSTALLED ${LANG_AFRIKAANS} "There is no installation of $(^NameDA)." + LangString MULTIUSER_INSTALLATION_FOR_CURRENT_USER_NOT_SUPPORTED ${LANG_AFRIKAANS} "The operating system doesn't support current user installations." + LangString MULTIUSER_ADMIN_ACCOUNT_LOGIN_REQUIRED ${LANG_AFRIKAANS} "You need to login with an account that is a member of the administrators group to continue." + LangString MULTIUSER_ELEVATION_NOT_SUPPORTED ${LANG_AFRIKAANS} "The operating system doesn't support elevation." + LangString MULTIUSER_LOGON_SERVICE_NOT_RUNNING ${LANG_AFRIKAANS} "Unable to elevate, Secondary Logon service not running." + LangString MULTIUSER_ELEVATION_ERROR ${LANG_AFRIKAANS} "Unable to elevate, error {ERROR}." +!endif + +!ifdef LANG_ALBANIAN + LangString MULTIUSER_PAGE_TITLE ${LANG_ALBANIAN} "Choose Users" + LangString MULTIUSER_INSTALL_PAGE_SUBTITLE ${LANG_ALBANIAN} "Choose for which users to install $(^NameDA)." + LangString MULTIUSER_UNINSTALL_PAGE_SUBTITLE ${LANG_ALBANIAN} "Choose for which users to remove $(^NameDA)." + LangString MULTIUSER_INSTALL_HEADER ${LANG_ALBANIAN} "Select whether to install $(^NameDA) for all users or for current user." + LangString MULTIUSER_UNINSTALL_HEADER ${LANG_ALBANIAN} "$(^NameDA) is installed both for all users and for current user.$\r$\nSelect which installation to remove." + LangString MULTIUSER_ALL_USERS ${LANG_ALBANIAN} "For &anyone who uses this computer (all users)" + LangString MULTIUSER_CURRENT_USER ${LANG_ALBANIAN} "For &me ({USER})" + LangString MULTIUSER_ALL_USERS_UMUI ${LANG_ALBANIAN} "For anyone who uses this computer (all users)" + LangString MULTIUSER_CURRENT_USER_UMUI ${LANG_ALBANIAN} "For me ({USER})" + LangString MULTIUSER_NEW_INSTALLATION_ALL_USERS ${LANG_ALBANIAN} "Fresh install for all users." + LangString MULTIUSER_NEW_INSTALLATION_CURRENT_USER ${LANG_ALBANIAN} "Fresh install for current user." + LangString MULTIUSER_INSTALLED_ALL_USERS ${LANG_ALBANIAN} "Version {VERSION} is installed for all users in $\"{FOLDER}$\"." + LangString MULTIUSER_INSTALLED_CURRENT_USER ${LANG_ALBANIAN} "Version {VERSION} is installed for current user in $\"{FOLDER}$\"." + LangString MULTIUSER_REINSTALL_SAME_VERSION_ALL_USERS ${LANG_ALBANIAN} "Reinstall version {VERSION} for all users." + LangString MULTIUSER_REINSTALL_SAME_VERSION_CURRENT_USER ${LANG_ALBANIAN} "Reinstall version {VERSION} for current user." + LangString MULTIUSER_REINSTALL_DIFF_VERSION_ALL_USERS ${LANG_ALBANIAN} "Uninstall version {OLD_VERSION} and install version {VERSION} for all users." + LangString MULTIUSER_REINSTALL_DIFF_VERSION_CURRENT_USER ${LANG_ALBANIAN} "Uninstall version {OLD_VERSION} and install version {VERSION} for current user." + LangString MULTIUSER_RUN_AS_ADMIN ${LANG_ALBANIAN} "You need to run this program as administrator." + LangString MULTIUSER_ADMIN_CREDENTIALS_REQUIRED ${LANG_ALBANIAN} "Administrator credentials required." + LangString MULTIUSER_ADMIN_UNINSTALL_CREDENTIALS_REQUIRED ${LANG_ALBANIAN} "Administrator credentials required for uninstall." + ; error messages - not so important + LangString MULTIUSER_INVALID_PARAMS ${LANG_ALBANIAN} "Invalid combination of paramaters." + LangString MULTIUSER_NOT_INSTALLED ${LANG_ALBANIAN} "There is no installation of $(^NameDA)." + LangString MULTIUSER_INSTALLATION_FOR_CURRENT_USER_NOT_SUPPORTED ${LANG_ALBANIAN} "The operating system doesn't support current user installations." + LangString MULTIUSER_ADMIN_ACCOUNT_LOGIN_REQUIRED ${LANG_ALBANIAN} "You need to login with an account that is a member of the administrators group to continue." + LangString MULTIUSER_ELEVATION_NOT_SUPPORTED ${LANG_ALBANIAN} "The operating system doesn't support elevation." + LangString MULTIUSER_LOGON_SERVICE_NOT_RUNNING ${LANG_ALBANIAN} "Unable to elevate, Secondary Logon service not running." + LangString MULTIUSER_ELEVATION_ERROR ${LANG_ALBANIAN} "Unable to elevate, error {ERROR}." +!endif + +!ifdef LANG_ARABIC + LangString MULTIUSER_PAGE_TITLE ${LANG_ARABIC} "Choose Users" + LangString MULTIUSER_INSTALL_PAGE_SUBTITLE ${LANG_ARABIC} "Choose for which users to install $(^NameDA)." + LangString MULTIUSER_UNINSTALL_PAGE_SUBTITLE ${LANG_ARABIC} "Choose for which users to remove $(^NameDA)." + LangString MULTIUSER_INSTALL_HEADER ${LANG_ARABIC} "Select whether to install $(^NameDA) for all users or for current user." + LangString MULTIUSER_UNINSTALL_HEADER ${LANG_ARABIC} "$(^NameDA) is installed both for all users and for current user.$\r$\nSelect which installation to remove." + LangString MULTIUSER_ALL_USERS ${LANG_ARABIC} "For &anyone who uses this computer (all users)" + LangString MULTIUSER_CURRENT_USER ${LANG_ARABIC} "For &me ({USER})" + LangString MULTIUSER_ALL_USERS_UMUI ${LANG_ARABIC} "For anyone who uses this computer (all users)" + LangString MULTIUSER_CURRENT_USER_UMUI ${LANG_ARABIC} "For me ({USER})" + LangString MULTIUSER_NEW_INSTALLATION_ALL_USERS ${LANG_ARABIC} "Fresh install for all users." + LangString MULTIUSER_NEW_INSTALLATION_CURRENT_USER ${LANG_ARABIC} "Fresh install for current user." + LangString MULTIUSER_INSTALLED_ALL_USERS ${LANG_ARABIC} "Version {VERSION} is installed for all users in $\"{FOLDER}$\"." + LangString MULTIUSER_INSTALLED_CURRENT_USER ${LANG_ARABIC} "Version {VERSION} is installed for current user in $\"{FOLDER}$\"." + LangString MULTIUSER_REINSTALL_SAME_VERSION_ALL_USERS ${LANG_ARABIC} "Reinstall version {VERSION} for all users." + LangString MULTIUSER_REINSTALL_SAME_VERSION_CURRENT_USER ${LANG_ARABIC} "Reinstall version {VERSION} for current user." + LangString MULTIUSER_REINSTALL_DIFF_VERSION_ALL_USERS ${LANG_ARABIC} "Uninstall version {OLD_VERSION} and install version {VERSION} for all users." + LangString MULTIUSER_REINSTALL_DIFF_VERSION_CURRENT_USER ${LANG_ARABIC} "Uninstall version {OLD_VERSION} and install version {VERSION} for current user." + LangString MULTIUSER_RUN_AS_ADMIN ${LANG_ARABIC} "You need to run this program as administrator." + LangString MULTIUSER_ADMIN_CREDENTIALS_REQUIRED ${LANG_ARABIC} "Administrator credentials required." + LangString MULTIUSER_ADMIN_UNINSTALL_CREDENTIALS_REQUIRED ${LANG_ARABIC} "Administrator credentials required for uninstall." + ; error messages - not so important + LangString MULTIUSER_INVALID_PARAMS ${LANG_ARABIC} "Invalid combination of paramaters." + LangString MULTIUSER_NOT_INSTALLED ${LANG_ARABIC} "There is no installation of $(^NameDA)." + LangString MULTIUSER_INSTALLATION_FOR_CURRENT_USER_NOT_SUPPORTED ${LANG_ARABIC} "The operating system doesn't support current user installations." + LangString MULTIUSER_ADMIN_ACCOUNT_LOGIN_REQUIRED ${LANG_ARABIC} "You need to login with an account that is a member of the administrators group to continue." + LangString MULTIUSER_ELEVATION_NOT_SUPPORTED ${LANG_ARABIC} "The operating system doesn't support elevation." + LangString MULTIUSER_LOGON_SERVICE_NOT_RUNNING ${LANG_ARABIC} "Unable to elevate, Secondary Logon service not running." + LangString MULTIUSER_ELEVATION_ERROR ${LANG_ARABIC} "Unable to elevate, error {ERROR}." +!endif + +!ifdef LANG_ARMENIAN + LangString MULTIUSER_PAGE_TITLE ${LANG_ARMENIAN} "Choose Users" + LangString MULTIUSER_INSTALL_PAGE_SUBTITLE ${LANG_ARMENIAN} "Choose for which users to install $(^NameDA)." + LangString MULTIUSER_UNINSTALL_PAGE_SUBTITLE ${LANG_ARMENIAN} "Choose for which users to remove $(^NameDA)." + LangString MULTIUSER_INSTALL_HEADER ${LANG_ARMENIAN} "Select whether to install $(^NameDA) for all users or for current user." + LangString MULTIUSER_UNINSTALL_HEADER ${LANG_ARMENIAN} "$(^NameDA) is installed both for all users and for current user.$\r$\nSelect which installation to remove." + LangString MULTIUSER_ALL_USERS ${LANG_ARMENIAN} "For &anyone who uses this computer (all users)" + LangString MULTIUSER_CURRENT_USER ${LANG_ARMENIAN} "For &me ({USER})" + LangString MULTIUSER_ALL_USERS_UMUI ${LANG_ARMENIAN} "For anyone who uses this computer (all users)" + LangString MULTIUSER_CURRENT_USER_UMUI ${LANG_ARMENIAN} "For me ({USER})" + LangString MULTIUSER_NEW_INSTALLATION_ALL_USERS ${LANG_ARMENIAN} "Fresh install for all users." + LangString MULTIUSER_NEW_INSTALLATION_CURRENT_USER ${LANG_ARMENIAN} "Fresh install for current user." + LangString MULTIUSER_INSTALLED_ALL_USERS ${LANG_ARMENIAN} "Version {VERSION} is installed for all users in $\"{FOLDER}$\"." + LangString MULTIUSER_INSTALLED_CURRENT_USER ${LANG_ARMENIAN} "Version {VERSION} is installed for current user in $\"{FOLDER}$\"." + LangString MULTIUSER_REINSTALL_SAME_VERSION_ALL_USERS ${LANG_ARMENIAN} "Reinstall version {VERSION} for all users." + LangString MULTIUSER_REINSTALL_SAME_VERSION_CURRENT_USER ${LANG_ARMENIAN} "Reinstall version {VERSION} for current user." + LangString MULTIUSER_REINSTALL_DIFF_VERSION_ALL_USERS ${LANG_ARMENIAN} "Uninstall version {OLD_VERSION} and install version {VERSION} for all users." + LangString MULTIUSER_REINSTALL_DIFF_VERSION_CURRENT_USER ${LANG_ARMENIAN} "Uninstall version {OLD_VERSION} and install version {VERSION} for current user." + LangString MULTIUSER_RUN_AS_ADMIN ${LANG_ARMENIAN} "You need to run this program as administrator." + LangString MULTIUSER_ADMIN_CREDENTIALS_REQUIRED ${LANG_ARMENIAN} "Administrator credentials required." + LangString MULTIUSER_ADMIN_UNINSTALL_CREDENTIALS_REQUIRED ${LANG_ARMENIAN} "Administrator credentials required for uninstall." + ; error messages - not so important + LangString MULTIUSER_INVALID_PARAMS ${LANG_ARMENIAN} "Invalid combination of paramaters." + LangString MULTIUSER_NOT_INSTALLED ${LANG_ARMENIAN} "There is no installation of $(^NameDA)." + LangString MULTIUSER_INSTALLATION_FOR_CURRENT_USER_NOT_SUPPORTED ${LANG_ARMENIAN} "The operating system doesn't support current user installations." + LangString MULTIUSER_ADMIN_ACCOUNT_LOGIN_REQUIRED ${LANG_ARMENIAN} "You need to login with an account that is a member of the administrators group to continue." + LangString MULTIUSER_ELEVATION_NOT_SUPPORTED ${LANG_ARMENIAN} "The operating system doesn't support elevation." + LangString MULTIUSER_LOGON_SERVICE_NOT_RUNNING ${LANG_ARMENIAN} "Unable to elevate, Secondary Logon service not running." + LangString MULTIUSER_ELEVATION_ERROR ${LANG_ARMENIAN} "Unable to elevate, error {ERROR}." +!endif + +!ifdef LANG_ASTURIAN + LangString MULTIUSER_PAGE_TITLE ${LANG_ASTURIAN} "Choose Users" + LangString MULTIUSER_INSTALL_PAGE_SUBTITLE ${LANG_ASTURIAN} "Choose for which users to install $(^NameDA)." + LangString MULTIUSER_UNINSTALL_PAGE_SUBTITLE ${LANG_ASTURIAN} "Choose for which users to remove $(^NameDA)." + LangString MULTIUSER_INSTALL_HEADER ${LANG_ASTURIAN} "Select whether to install $(^NameDA) for all users or for current user." + LangString MULTIUSER_UNINSTALL_HEADER ${LANG_ASTURIAN} "$(^NameDA) is installed both for all users and for current user.$\r$\nSelect which installation to remove." + LangString MULTIUSER_ALL_USERS ${LANG_ASTURIAN} "For &anyone who uses this computer (all users)" + LangString MULTIUSER_CURRENT_USER ${LANG_ASTURIAN} "For &me ({USER})" + LangString MULTIUSER_ALL_USERS_UMUI ${LANG_ASTURIAN} "For anyone who uses this computer (all users)" + LangString MULTIUSER_CURRENT_USER_UMUI ${LANG_ASTURIAN} "For me ({USER})" + LangString MULTIUSER_NEW_INSTALLATION_ALL_USERS ${LANG_ASTURIAN} "Fresh install for all users." + LangString MULTIUSER_NEW_INSTALLATION_CURRENT_USER ${LANG_ASTURIAN} "Fresh install for current user." + LangString MULTIUSER_INSTALLED_ALL_USERS ${LANG_ASTURIAN} "Version {VERSION} is installed for all users in $\"{FOLDER}$\"." + LangString MULTIUSER_INSTALLED_CURRENT_USER ${LANG_ASTURIAN} "Version {VERSION} is installed for current user in $\"{FOLDER}$\"." + LangString MULTIUSER_REINSTALL_SAME_VERSION_ALL_USERS ${LANG_ASTURIAN} "Reinstall version {VERSION} for all users." + LangString MULTIUSER_REINSTALL_SAME_VERSION_CURRENT_USER ${LANG_ASTURIAN} "Reinstall version {VERSION} for current user." + LangString MULTIUSER_REINSTALL_DIFF_VERSION_ALL_USERS ${LANG_ASTURIAN} "Uninstall version {OLD_VERSION} and install version {VERSION} for all users." + LangString MULTIUSER_REINSTALL_DIFF_VERSION_CURRENT_USER ${LANG_ASTURIAN} "Uninstall version {OLD_VERSION} and install version {VERSION} for current user." + LangString MULTIUSER_RUN_AS_ADMIN ${LANG_ASTURIAN} "You need to run this program as administrator." + LangString MULTIUSER_ADMIN_CREDENTIALS_REQUIRED ${LANG_ASTURIAN} "Administrator credentials required." + LangString MULTIUSER_ADMIN_UNINSTALL_CREDENTIALS_REQUIRED ${LANG_ASTURIAN} "Administrator credentials required for uninstall." + ; error messages - not so important + LangString MULTIUSER_INVALID_PARAMS ${LANG_ASTURIAN} "Invalid combination of paramaters." + LangString MULTIUSER_NOT_INSTALLED ${LANG_ASTURIAN} "There is no installation of $(^NameDA)." + LangString MULTIUSER_INSTALLATION_FOR_CURRENT_USER_NOT_SUPPORTED ${LANG_ASTURIAN} "The operating system doesn't support current user installations." + LangString MULTIUSER_ADMIN_ACCOUNT_LOGIN_REQUIRED ${LANG_ASTURIAN} "You need to login with an account that is a member of the administrators group to continue." + LangString MULTIUSER_ELEVATION_NOT_SUPPORTED ${LANG_ASTURIAN} "The operating system doesn't support elevation." + LangString MULTIUSER_LOGON_SERVICE_NOT_RUNNING ${LANG_ASTURIAN} "Unable to elevate, Secondary Logon service not running." + LangString MULTIUSER_ELEVATION_ERROR ${LANG_ASTURIAN} "Unable to elevate, error {ERROR}." +!endif + +!ifdef LANG_BASQUE + LangString MULTIUSER_PAGE_TITLE ${LANG_BASQUE} "Choose Users" + LangString MULTIUSER_INSTALL_PAGE_SUBTITLE ${LANG_BASQUE} "Choose for which users to install $(^NameDA)." + LangString MULTIUSER_UNINSTALL_PAGE_SUBTITLE ${LANG_BASQUE} "Choose for which users to remove $(^NameDA)." + LangString MULTIUSER_INSTALL_HEADER ${LANG_BASQUE} "Select whether to install $(^NameDA) for all users or for current user." + LangString MULTIUSER_UNINSTALL_HEADER ${LANG_BASQUE} "$(^NameDA) is installed both for all users and for current user.$\r$\nSelect which installation to remove." + LangString MULTIUSER_ALL_USERS ${LANG_BASQUE} "For &anyone who uses this computer (all users)" + LangString MULTIUSER_CURRENT_USER ${LANG_BASQUE} "For &me ({USER})" + LangString MULTIUSER_ALL_USERS_UMUI ${LANG_BASQUE} "For anyone who uses this computer (all users)" + LangString MULTIUSER_CURRENT_USER_UMUI ${LANG_BASQUE} "For me ({USER})" + LangString MULTIUSER_NEW_INSTALLATION_ALL_USERS ${LANG_BASQUE} "Fresh install for all users." + LangString MULTIUSER_NEW_INSTALLATION_CURRENT_USER ${LANG_BASQUE} "Fresh install for current user." + LangString MULTIUSER_INSTALLED_ALL_USERS ${LANG_BASQUE} "Version {VERSION} is installed for all users in $\"{FOLDER}$\"." + LangString MULTIUSER_INSTALLED_CURRENT_USER ${LANG_BASQUE} "Version {VERSION} is installed for current user in $\"{FOLDER}$\"." + LangString MULTIUSER_REINSTALL_SAME_VERSION_ALL_USERS ${LANG_BASQUE} "Reinstall version {VERSION} for all users." + LangString MULTIUSER_REINSTALL_SAME_VERSION_CURRENT_USER ${LANG_BASQUE} "Reinstall version {VERSION} for current user." + LangString MULTIUSER_REINSTALL_DIFF_VERSION_ALL_USERS ${LANG_BASQUE} "Uninstall version {OLD_VERSION} and install version {VERSION} for all users." + LangString MULTIUSER_REINSTALL_DIFF_VERSION_CURRENT_USER ${LANG_BASQUE} "Uninstall version {OLD_VERSION} and install version {VERSION} for current user." + LangString MULTIUSER_RUN_AS_ADMIN ${LANG_BASQUE} "You need to run this program as administrator." + LangString MULTIUSER_ADMIN_CREDENTIALS_REQUIRED ${LANG_BASQUE} "Administrator credentials required." + LangString MULTIUSER_ADMIN_UNINSTALL_CREDENTIALS_REQUIRED ${LANG_BASQUE} "Administrator credentials required for uninstall." + ; error messages - not so important + LangString MULTIUSER_INVALID_PARAMS ${LANG_BASQUE} "Invalid combination of paramaters." + LangString MULTIUSER_NOT_INSTALLED ${LANG_BASQUE} "There is no installation of $(^NameDA)." + LangString MULTIUSER_INSTALLATION_FOR_CURRENT_USER_NOT_SUPPORTED ${LANG_BASQUE} "The operating system doesn't support current user installations." + LangString MULTIUSER_ADMIN_ACCOUNT_LOGIN_REQUIRED ${LANG_BASQUE} "You need to login with an account that is a member of the administrators group to continue." + LangString MULTIUSER_ELEVATION_NOT_SUPPORTED ${LANG_BASQUE} "The operating system doesn't support elevation." + LangString MULTIUSER_LOGON_SERVICE_NOT_RUNNING ${LANG_BASQUE} "Unable to elevate, Secondary Logon service not running." + LangString MULTIUSER_ELEVATION_ERROR ${LANG_BASQUE} "Unable to elevate, error {ERROR}." +!endif + +!ifdef LANG_BELARUSIAN + LangString MULTIUSER_PAGE_TITLE ${LANG_BELARUSIAN} "Choose Users" + LangString MULTIUSER_INSTALL_PAGE_SUBTITLE ${LANG_BELARUSIAN} "Choose for which users to install $(^NameDA)." + LangString MULTIUSER_UNINSTALL_PAGE_SUBTITLE ${LANG_BELARUSIAN} "Choose for which users to remove $(^NameDA)." + LangString MULTIUSER_INSTALL_HEADER ${LANG_BELARUSIAN} "Select whether to install $(^NameDA) for all users or for current user." + LangString MULTIUSER_UNINSTALL_HEADER ${LANG_BELARUSIAN} "$(^NameDA) is installed both for all users and for current user.$\r$\nSelect which installation to remove." + LangString MULTIUSER_ALL_USERS ${LANG_BELARUSIAN} "For &anyone who uses this computer (all users)" + LangString MULTIUSER_CURRENT_USER ${LANG_BELARUSIAN} "For &me ({USER})" + LangString MULTIUSER_ALL_USERS_UMUI ${LANG_BELARUSIAN} "For anyone who uses this computer (all users)" + LangString MULTIUSER_CURRENT_USER_UMUI ${LANG_BELARUSIAN} "For me ({USER})" + LangString MULTIUSER_NEW_INSTALLATION_ALL_USERS ${LANG_BELARUSIAN} "Fresh install for all users." + LangString MULTIUSER_NEW_INSTALLATION_CURRENT_USER ${LANG_BELARUSIAN} "Fresh install for current user." + LangString MULTIUSER_INSTALLED_ALL_USERS ${LANG_BELARUSIAN} "Version {VERSION} is installed for all users in $\"{FOLDER}$\"." + LangString MULTIUSER_INSTALLED_CURRENT_USER ${LANG_BELARUSIAN} "Version {VERSION} is installed for current user in $\"{FOLDER}$\"." + LangString MULTIUSER_REINSTALL_SAME_VERSION_ALL_USERS ${LANG_BELARUSIAN} "Reinstall version {VERSION} for all users." + LangString MULTIUSER_REINSTALL_SAME_VERSION_CURRENT_USER ${LANG_BELARUSIAN} "Reinstall version {VERSION} for current user." + LangString MULTIUSER_REINSTALL_DIFF_VERSION_ALL_USERS ${LANG_BELARUSIAN} "Uninstall version {OLD_VERSION} and install version {VERSION} for all users." + LangString MULTIUSER_REINSTALL_DIFF_VERSION_CURRENT_USER ${LANG_BELARUSIAN} "Uninstall version {OLD_VERSION} and install version {VERSION} for current user." + LangString MULTIUSER_RUN_AS_ADMIN ${LANG_BELARUSIAN} "You need to run this program as administrator." + LangString MULTIUSER_ADMIN_CREDENTIALS_REQUIRED ${LANG_BELARUSIAN} "Administrator credentials required." + LangString MULTIUSER_ADMIN_UNINSTALL_CREDENTIALS_REQUIRED ${LANG_BELARUSIAN} "Administrator credentials required for uninstall." + ; error messages - not so important + LangString MULTIUSER_INVALID_PARAMS ${LANG_BELARUSIAN} "Invalid combination of paramaters." + LangString MULTIUSER_NOT_INSTALLED ${LANG_BELARUSIAN} "There is no installation of $(^NameDA)." + LangString MULTIUSER_INSTALLATION_FOR_CURRENT_USER_NOT_SUPPORTED ${LANG_BELARUSIAN} "The operating system doesn't support current user installations." + LangString MULTIUSER_ADMIN_ACCOUNT_LOGIN_REQUIRED ${LANG_BELARUSIAN} "You need to login with an account that is a member of the administrators group to continue." + LangString MULTIUSER_ELEVATION_NOT_SUPPORTED ${LANG_BELARUSIAN} "The operating system doesn't support elevation." + LangString MULTIUSER_LOGON_SERVICE_NOT_RUNNING ${LANG_BELARUSIAN} "Unable to elevate, Secondary Logon service not running." + LangString MULTIUSER_ELEVATION_ERROR ${LANG_BELARUSIAN} "Unable to elevate, error {ERROR}." +!endif + +!ifdef LANG_BOSNIAN + LangString MULTIUSER_PAGE_TITLE ${LANG_BOSNIAN} "Choose Users" + LangString MULTIUSER_INSTALL_PAGE_SUBTITLE ${LANG_BOSNIAN} "Choose for which users to install $(^NameDA)." + LangString MULTIUSER_UNINSTALL_PAGE_SUBTITLE ${LANG_BOSNIAN} "Choose for which users to remove $(^NameDA)." + LangString MULTIUSER_INSTALL_HEADER ${LANG_BOSNIAN} "Select whether to install $(^NameDA) for all users or for current user." + LangString MULTIUSER_UNINSTALL_HEADER ${LANG_BOSNIAN} "$(^NameDA) is installed both for all users and for current user.$\r$\nSelect which installation to remove." + LangString MULTIUSER_ALL_USERS ${LANG_BOSNIAN} "For &anyone who uses this computer (all users)" + LangString MULTIUSER_CURRENT_USER ${LANG_BOSNIAN} "For &me ({USER})" + LangString MULTIUSER_ALL_USERS_UMUI ${LANG_BOSNIAN} "For anyone who uses this computer (all users)" + LangString MULTIUSER_CURRENT_USER_UMUI ${LANG_BOSNIAN} "For me ({USER})" + LangString MULTIUSER_NEW_INSTALLATION_ALL_USERS ${LANG_BOSNIAN} "Fresh install for all users." + LangString MULTIUSER_NEW_INSTALLATION_CURRENT_USER ${LANG_BOSNIAN} "Fresh install for current user." + LangString MULTIUSER_INSTALLED_ALL_USERS ${LANG_BOSNIAN} "Version {VERSION} is installed for all users in $\"{FOLDER}$\"." + LangString MULTIUSER_INSTALLED_CURRENT_USER ${LANG_BOSNIAN} "Version {VERSION} is installed for current user in $\"{FOLDER}$\"." + LangString MULTIUSER_REINSTALL_SAME_VERSION_ALL_USERS ${LANG_BOSNIAN} "Reinstall version {VERSION} for all users." + LangString MULTIUSER_REINSTALL_SAME_VERSION_CURRENT_USER ${LANG_BOSNIAN} "Reinstall version {VERSION} for current user." + LangString MULTIUSER_REINSTALL_DIFF_VERSION_ALL_USERS ${LANG_BOSNIAN} "Uninstall version {OLD_VERSION} and install version {VERSION} for all users." + LangString MULTIUSER_REINSTALL_DIFF_VERSION_CURRENT_USER ${LANG_BOSNIAN} "Uninstall version {OLD_VERSION} and install version {VERSION} for current user." + LangString MULTIUSER_RUN_AS_ADMIN ${LANG_BOSNIAN} "You need to run this program as administrator." + LangString MULTIUSER_ADMIN_CREDENTIALS_REQUIRED ${LANG_BOSNIAN} "Administrator credentials required." + LangString MULTIUSER_ADMIN_UNINSTALL_CREDENTIALS_REQUIRED ${LANG_BOSNIAN} "Administrator credentials required for uninstall." + ; error messages - not so important + LangString MULTIUSER_INVALID_PARAMS ${LANG_BOSNIAN} "Invalid combination of paramaters." + LangString MULTIUSER_NOT_INSTALLED ${LANG_BOSNIAN} "There is no installation of $(^NameDA)." + LangString MULTIUSER_INSTALLATION_FOR_CURRENT_USER_NOT_SUPPORTED ${LANG_BOSNIAN} "The operating system doesn't support current user installations." + LangString MULTIUSER_ADMIN_ACCOUNT_LOGIN_REQUIRED ${LANG_BOSNIAN} "You need to login with an account that is a member of the administrators group to continue." + LangString MULTIUSER_ELEVATION_NOT_SUPPORTED ${LANG_BOSNIAN} "The operating system doesn't support elevation." + LangString MULTIUSER_LOGON_SERVICE_NOT_RUNNING ${LANG_BOSNIAN} "Unable to elevate, Secondary Logon service not running." + LangString MULTIUSER_ELEVATION_ERROR ${LANG_BOSNIAN} "Unable to elevate, error {ERROR}." +!endif + +!ifdef LANG_BRETON + LangString MULTIUSER_PAGE_TITLE ${LANG_BRETON} "Choose Users" + LangString MULTIUSER_INSTALL_PAGE_SUBTITLE ${LANG_BRETON} "Choose for which users to install $(^NameDA)." + LangString MULTIUSER_UNINSTALL_PAGE_SUBTITLE ${LANG_BRETON} "Choose for which users to remove $(^NameDA)." + LangString MULTIUSER_INSTALL_HEADER ${LANG_BRETON} "Select whether to install $(^NameDA) for all users or for current user." + LangString MULTIUSER_UNINSTALL_HEADER ${LANG_BRETON} "$(^NameDA) is installed both for all users and for current user.$\r$\nSelect which installation to remove." + LangString MULTIUSER_ALL_USERS ${LANG_BRETON} "For &anyone who uses this computer (all users)" + LangString MULTIUSER_CURRENT_USER ${LANG_BRETON} "For &me ({USER})" + LangString MULTIUSER_ALL_USERS_UMUI ${LANG_BRETON} "For anyone who uses this computer (all users)" + LangString MULTIUSER_CURRENT_USER_UMUI ${LANG_BRETON} "For me ({USER})" + LangString MULTIUSER_NEW_INSTALLATION_ALL_USERS ${LANG_BRETON} "Fresh install for all users." + LangString MULTIUSER_NEW_INSTALLATION_CURRENT_USER ${LANG_BRETON} "Fresh install for current user." + LangString MULTIUSER_INSTALLED_ALL_USERS ${LANG_BRETON} "Version {VERSION} is installed for all users in $\"{FOLDER}$\"." + LangString MULTIUSER_INSTALLED_CURRENT_USER ${LANG_BRETON} "Version {VERSION} is installed for current user in $\"{FOLDER}$\"." + LangString MULTIUSER_REINSTALL_SAME_VERSION_ALL_USERS ${LANG_BRETON} "Reinstall version {VERSION} for all users." + LangString MULTIUSER_REINSTALL_SAME_VERSION_CURRENT_USER ${LANG_BRETON} "Reinstall version {VERSION} for current user." + LangString MULTIUSER_REINSTALL_DIFF_VERSION_ALL_USERS ${LANG_BRETON} "Uninstall version {OLD_VERSION} and install version {VERSION} for all users." + LangString MULTIUSER_REINSTALL_DIFF_VERSION_CURRENT_USER ${LANG_BRETON} "Uninstall version {OLD_VERSION} and install version {VERSION} for current user." + LangString MULTIUSER_RUN_AS_ADMIN ${LANG_BRETON} "You need to run this program as administrator." + LangString MULTIUSER_ADMIN_CREDENTIALS_REQUIRED ${LANG_BRETON} "Administrator credentials required." + LangString MULTIUSER_ADMIN_UNINSTALL_CREDENTIALS_REQUIRED ${LANG_BRETON} "Administrator credentials required for uninstall." + ; error messages - not so important + LangString MULTIUSER_INVALID_PARAMS ${LANG_BRETON} "Invalid combination of paramaters." + LangString MULTIUSER_NOT_INSTALLED ${LANG_BRETON} "There is no installation of $(^NameDA)." + LangString MULTIUSER_INSTALLATION_FOR_CURRENT_USER_NOT_SUPPORTED ${LANG_BRETON} "The operating system doesn't support current user installations." + LangString MULTIUSER_ADMIN_ACCOUNT_LOGIN_REQUIRED ${LANG_BRETON} "You need to login with an account that is a member of the administrators group to continue." + LangString MULTIUSER_ELEVATION_NOT_SUPPORTED ${LANG_BRETON} "The operating system doesn't support elevation." + LangString MULTIUSER_LOGON_SERVICE_NOT_RUNNING ${LANG_BRETON} "Unable to elevate, Secondary Logon service not running." + LangString MULTIUSER_ELEVATION_ERROR ${LANG_BRETON} "Unable to elevate, error {ERROR}." +!endif + +!ifdef LANG_BULGARIAN + LangString MULTIUSER_PAGE_TITLE ${LANG_BULGARIAN} "Избор на потребители" + LangString MULTIUSER_INSTALL_PAGE_SUBTITLE ${LANG_BULGARIAN} "Изберете за кои потребители да се инсталира $(^NameDA)." + LangString MULTIUSER_UNINSTALL_PAGE_SUBTITLE ${LANG_BULGARIAN} "Изберете за кои потребители да се премахне $(^NameDA)." + LangString MULTIUSER_INSTALL_HEADER ${LANG_BULGARIAN} "Изберете дали да инсталирате $(^NameDA) за всички потребители или за текущия потребител." + LangString MULTIUSER_UNINSTALL_HEADER ${LANG_BULGARIAN} "$(^NameDA) е инсталиран едновременно за всички потребители и за текущия потребител.$\r$\nИзберете коя инсталация премахнете." + LangString MULTIUSER_ALL_USERS ${LANG_BULGARIAN} "За &всеки, който използва този компютър (всички потребители)" + LangString MULTIUSER_CURRENT_USER ${LANG_BULGARIAN} "За &мен ({USER})" + LangString MULTIUSER_ALL_USERS_UMUI ${LANG_BULGARIAN} "За всеки, който използва този компютър (всички потребители)" + LangString MULTIUSER_CURRENT_USER_UMUI ${LANG_BULGARIAN} "За мен ({USER})" + LangString MULTIUSER_NEW_INSTALLATION_ALL_USERS ${LANG_BULGARIAN} "Нова инсталация за всички потребители." + LangString MULTIUSER_NEW_INSTALLATION_CURRENT_USER ${LANG_BULGARIAN} "Нова инсталация за текущия потребител." + LangString MULTIUSER_INSTALLED_ALL_USERS ${LANG_BULGARIAN} "Версия {VERSION} е инсталирана за всички потребители в $\"{FOLDER}$\"." + LangString MULTIUSER_INSTALLED_CURRENT_USER ${LANG_BULGARIAN} "Версия {VERSION} е инсалирана за текущия потребител в $\"{FOLDER}$\"." + LangString MULTIUSER_REINSTALL_SAME_VERSION_ALL_USERS ${LANG_BULGARIAN} "Преинсталиране на версия {VERSION} за всички потребители." + LangString MULTIUSER_REINSTALL_SAME_VERSION_CURRENT_USER ${LANG_BULGARIAN} "Преинсталиране на версия {VERSION} за текущия потребител." + LangString MULTIUSER_REINSTALL_DIFF_VERSION_ALL_USERS ${LANG_BULGARIAN} "Деинсталиране на версия {OLD_VERSION} и инсталиране на версия {VERSION} за всички потребители." + LangString MULTIUSER_REINSTALL_DIFF_VERSION_CURRENT_USER ${LANG_BULGARIAN} "Деинсталиране на версия {OLD_VERSION} и инсталиране на версия {VERSION} за текущия потребител." + LangString MULTIUSER_RUN_AS_ADMIN ${LANG_BULGARIAN} "Трябва да стартирате тази програма като администратор." + LangString MULTIUSER_ADMIN_CREDENTIALS_REQUIRED ${LANG_BULGARIAN} "Изисква се администраторска идентификация." + LangString MULTIUSER_ADMIN_UNINSTALL_CREDENTIALS_REQUIRED ${LANG_BULGARIAN} "Administrator credentials required for uninstall." + ; error messages - not so important + LangString MULTIUSER_INVALID_PARAMS ${LANG_BULGARIAN} "Невалидна комбинация от параметри." + LangString MULTIUSER_NOT_INSTALLED ${LANG_BULGARIAN} "Няма инсталация на $(^NameDA)." + LangString MULTIUSER_INSTALLATION_FOR_CURRENT_USER_NOT_SUPPORTED ${LANG_BULGARIAN} "Операционната система не поддържа инсталации за текущия потребител." + LangString MULTIUSER_ADMIN_ACCOUNT_LOGIN_REQUIRED ${LANG_BULGARIAN} "Трябва да влезете с профил, който е член на администраторската група, за да продължите." + LangString MULTIUSER_ELEVATION_NOT_SUPPORTED ${LANG_BULGARIAN} "Операционната система не поддържа повишаване на привилегиите." + LangString MULTIUSER_LOGON_SERVICE_NOT_RUNNING ${LANG_BULGARIAN} "Не е възможно повишаване на привилегиите, услугата Secondary Logon не е пусната." + LangString MULTIUSER_ELEVATION_ERROR ${LANG_BULGARIAN} "Не е възможно повишаване на привилегиите, грешка {ERROR}." +!endif + +!ifdef LANG_CATALAN + LangString MULTIUSER_PAGE_TITLE ${LANG_CATALAN} "Choose Users" + LangString MULTIUSER_INSTALL_PAGE_SUBTITLE ${LANG_CATALAN} "Choose for which users to install $(^NameDA)." + LangString MULTIUSER_UNINSTALL_PAGE_SUBTITLE ${LANG_CATALAN} "Choose for which users to remove $(^NameDA)." + LangString MULTIUSER_INSTALL_HEADER ${LANG_CATALAN} "Select whether to install $(^NameDA) for all users or for current user." + LangString MULTIUSER_UNINSTALL_HEADER ${LANG_CATALAN} "$(^NameDA) is installed both for all users and for current user.$\r$\nSelect which installation to remove." + LangString MULTIUSER_ALL_USERS ${LANG_CATALAN} "For &anyone who uses this computer (all users)" + LangString MULTIUSER_CURRENT_USER ${LANG_CATALAN} "For &me ({USER})" + LangString MULTIUSER_ALL_USERS_UMUI ${LANG_CATALAN} "For anyone who uses this computer (all users)" + LangString MULTIUSER_CURRENT_USER_UMUI ${LANG_CATALAN} "For me ({USER})" + LangString MULTIUSER_NEW_INSTALLATION_ALL_USERS ${LANG_CATALAN} "Fresh install for all users." + LangString MULTIUSER_NEW_INSTALLATION_CURRENT_USER ${LANG_CATALAN} "Fresh install for current user." + LangString MULTIUSER_INSTALLED_ALL_USERS ${LANG_CATALAN} "Version {VERSION} is installed for all users in $\"{FOLDER}$\"." + LangString MULTIUSER_INSTALLED_CURRENT_USER ${LANG_CATALAN} "Version {VERSION} is installed for current user in $\"{FOLDER}$\"." + LangString MULTIUSER_REINSTALL_SAME_VERSION_ALL_USERS ${LANG_CATALAN} "Reinstall version {VERSION} for all users." + LangString MULTIUSER_REINSTALL_SAME_VERSION_CURRENT_USER ${LANG_CATALAN} "Reinstall version {VERSION} for current user." + LangString MULTIUSER_REINSTALL_DIFF_VERSION_ALL_USERS ${LANG_CATALAN} "Uninstall version {OLD_VERSION} and install version {VERSION} for all users." + LangString MULTIUSER_REINSTALL_DIFF_VERSION_CURRENT_USER ${LANG_CATALAN} "Uninstall version {OLD_VERSION} and install version {VERSION} for current user." + LangString MULTIUSER_RUN_AS_ADMIN ${LANG_CATALAN} "You need to run this program as administrator." + LangString MULTIUSER_ADMIN_CREDENTIALS_REQUIRED ${LANG_CATALAN} "Administrator credentials required." + LangString MULTIUSER_ADMIN_UNINSTALL_CREDENTIALS_REQUIRED ${LANG_CATALAN} "Administrator credentials required for uninstall." + ; error messages - not so important + LangString MULTIUSER_INVALID_PARAMS ${LANG_CATALAN} "Invalid combination of paramaters." + LangString MULTIUSER_NOT_INSTALLED ${LANG_CATALAN} "There is no installation of $(^NameDA)." + LangString MULTIUSER_INSTALLATION_FOR_CURRENT_USER_NOT_SUPPORTED ${LANG_CATALAN} "The operating system doesn't support current user installations." + LangString MULTIUSER_ADMIN_ACCOUNT_LOGIN_REQUIRED ${LANG_CATALAN} "You need to login with an account that is a member of the administrators group to continue." + LangString MULTIUSER_ELEVATION_NOT_SUPPORTED ${LANG_CATALAN} "The operating system doesn't support elevation." + LangString MULTIUSER_LOGON_SERVICE_NOT_RUNNING ${LANG_CATALAN} "Unable to elevate, Secondary Logon service not running." + LangString MULTIUSER_ELEVATION_ERROR ${LANG_CATALAN} "Unable to elevate, error {ERROR}." +!endif + +!ifdef LANG_CORSICAN + LangString MULTIUSER_PAGE_TITLE ${LANG_CORSICAN} "Choose Users" + LangString MULTIUSER_INSTALL_PAGE_SUBTITLE ${LANG_CORSICAN} "Choose for which users to install $(^NameDA)." + LangString MULTIUSER_UNINSTALL_PAGE_SUBTITLE ${LANG_CORSICAN} "Choose for which users to remove $(^NameDA)." + LangString MULTIUSER_INSTALL_HEADER ${LANG_CORSICAN} "Select whether to install $(^NameDA) for all users or for current user." + LangString MULTIUSER_UNINSTALL_HEADER ${LANG_CORSICAN} "$(^NameDA) is installed both for all users and for current user.$\r$\nSelect which installation to remove." + LangString MULTIUSER_ALL_USERS ${LANG_CORSICAN} "For &anyone who uses this computer (all users)" + LangString MULTIUSER_CURRENT_USER ${LANG_CORSICAN} "For &me ({USER})" + LangString MULTIUSER_ALL_USERS_UMUI ${LANG_CORSICAN} "For anyone who uses this computer (all users)" + LangString MULTIUSER_CURRENT_USER_UMUI ${LANG_CORSICAN} "For me ({USER})" + LangString MULTIUSER_NEW_INSTALLATION_ALL_USERS ${LANG_CORSICAN} "Fresh install for all users." + LangString MULTIUSER_NEW_INSTALLATION_CURRENT_USER ${LANG_CORSICAN} "Fresh install for current user." + LangString MULTIUSER_INSTALLED_ALL_USERS ${LANG_CORSICAN} "Version {VERSION} is installed for all users in $\"{FOLDER}$\"." + LangString MULTIUSER_INSTALLED_CURRENT_USER ${LANG_CORSICAN} "Version {VERSION} is installed for current user in $\"{FOLDER}$\"." + LangString MULTIUSER_REINSTALL_SAME_VERSION_ALL_USERS ${LANG_CORSICAN} "Reinstall version {VERSION} for all users." + LangString MULTIUSER_REINSTALL_SAME_VERSION_CURRENT_USER ${LANG_CORSICAN} "Reinstall version {VERSION} for current user." + LangString MULTIUSER_REINSTALL_DIFF_VERSION_ALL_USERS ${LANG_CORSICAN} "Uninstall version {OLD_VERSION} and install version {VERSION} for all users." + LangString MULTIUSER_REINSTALL_DIFF_VERSION_CURRENT_USER ${LANG_CORSICAN} "Uninstall version {OLD_VERSION} and install version {VERSION} for current user." + LangString MULTIUSER_RUN_AS_ADMIN ${LANG_CORSICAN} "You need to run this program as administrator." + LangString MULTIUSER_ADMIN_CREDENTIALS_REQUIRED ${LANG_CORSICAN} "Administrator credentials required." + LangString MULTIUSER_ADMIN_UNINSTALL_CREDENTIALS_REQUIRED ${LANG_CORSICAN} "Administrator credentials required for uninstall." + ; error messages - not so important + LangString MULTIUSER_INVALID_PARAMS ${LANG_CORSICAN} "Invalid combination of paramaters." + LangString MULTIUSER_NOT_INSTALLED ${LANG_CORSICAN} "There is no installation of $(^NameDA)." + LangString MULTIUSER_INSTALLATION_FOR_CURRENT_USER_NOT_SUPPORTED ${LANG_CORSICAN} "The operating system doesn't support current user installations." + LangString MULTIUSER_ADMIN_ACCOUNT_LOGIN_REQUIRED ${LANG_CORSICAN} "You need to login with an account that is a member of the administrators group to continue." + LangString MULTIUSER_ELEVATION_NOT_SUPPORTED ${LANG_CORSICAN} "The operating system doesn't support elevation." + LangString MULTIUSER_LOGON_SERVICE_NOT_RUNNING ${LANG_CORSICAN} "Unable to elevate, Secondary Logon service not running." + LangString MULTIUSER_ELEVATION_ERROR ${LANG_CORSICAN} "Unable to elevate, error {ERROR}." +!endif + +!ifdef LANG_CROATIAN + LangString MULTIUSER_PAGE_TITLE ${LANG_CROATIAN} "Choose Users" + LangString MULTIUSER_INSTALL_PAGE_SUBTITLE ${LANG_CROATIAN} "Choose for which users to install $(^NameDA)." + LangString MULTIUSER_UNINSTALL_PAGE_SUBTITLE ${LANG_CROATIAN} "Choose for which users to remove $(^NameDA)." + LangString MULTIUSER_INSTALL_HEADER ${LANG_CROATIAN} "Select whether to install $(^NameDA) for all users or for current user." + LangString MULTIUSER_UNINSTALL_HEADER ${LANG_CROATIAN} "$(^NameDA) is installed both for all users and for current user.$\r$\nSelect which installation to remove." + LangString MULTIUSER_ALL_USERS ${LANG_CROATIAN} "For &anyone who uses this computer (all users)" + LangString MULTIUSER_CURRENT_USER ${LANG_CROATIAN} "For &me ({USER})" + LangString MULTIUSER_ALL_USERS_UMUI ${LANG_CROATIAN} "For anyone who uses this computer (all users)" + LangString MULTIUSER_CURRENT_USER_UMUI ${LANG_CROATIAN} "For me ({USER})" + LangString MULTIUSER_NEW_INSTALLATION_ALL_USERS ${LANG_CROATIAN} "Fresh install for all users." + LangString MULTIUSER_NEW_INSTALLATION_CURRENT_USER ${LANG_CROATIAN} "Fresh install for current user." + LangString MULTIUSER_INSTALLED_ALL_USERS ${LANG_CROATIAN} "Version {VERSION} is installed for all users in $\"{FOLDER}$\"." + LangString MULTIUSER_INSTALLED_CURRENT_USER ${LANG_CROATIAN} "Version {VERSION} is installed for current user in $\"{FOLDER}$\"." + LangString MULTIUSER_REINSTALL_SAME_VERSION_ALL_USERS ${LANG_CROATIAN} "Reinstall version {VERSION} for all users." + LangString MULTIUSER_REINSTALL_SAME_VERSION_CURRENT_USER ${LANG_CROATIAN} "Reinstall version {VERSION} for current user." + LangString MULTIUSER_REINSTALL_DIFF_VERSION_ALL_USERS ${LANG_CROATIAN} "Uninstall version {OLD_VERSION} and install version {VERSION} for all users." + LangString MULTIUSER_REINSTALL_DIFF_VERSION_CURRENT_USER ${LANG_CROATIAN} "Uninstall version {OLD_VERSION} and install version {VERSION} for current user." + LangString MULTIUSER_RUN_AS_ADMIN ${LANG_CROATIAN} "You need to run this program as administrator." + LangString MULTIUSER_ADMIN_CREDENTIALS_REQUIRED ${LANG_CROATIAN} "Administrator credentials required." + LangString MULTIUSER_ADMIN_UNINSTALL_CREDENTIALS_REQUIRED ${LANG_CROATIAN} "Administrator credentials required for uninstall." + ; error messages - not so important + LangString MULTIUSER_INVALID_PARAMS ${LANG_CROATIAN} "Invalid combination of paramaters." + LangString MULTIUSER_NOT_INSTALLED ${LANG_CROATIAN} "There is no installation of $(^NameDA)." + LangString MULTIUSER_INSTALLATION_FOR_CURRENT_USER_NOT_SUPPORTED ${LANG_CROATIAN} "The operating system doesn't support current user installations." + LangString MULTIUSER_ADMIN_ACCOUNT_LOGIN_REQUIRED ${LANG_CROATIAN} "You need to login with an account that is a member of the administrators group to continue." + LangString MULTIUSER_ELEVATION_NOT_SUPPORTED ${LANG_CROATIAN} "The operating system doesn't support elevation." + LangString MULTIUSER_LOGON_SERVICE_NOT_RUNNING ${LANG_CROATIAN} "Unable to elevate, Secondary Logon service not running." + LangString MULTIUSER_ELEVATION_ERROR ${LANG_CROATIAN} "Unable to elevate, error {ERROR}." +!endif + +!ifdef LANG_CZECH + LangString MULTIUSER_PAGE_TITLE ${LANG_CZECH} "Choose Users" + LangString MULTIUSER_INSTALL_PAGE_SUBTITLE ${LANG_CZECH} "Choose for which users to install $(^NameDA)." + LangString MULTIUSER_UNINSTALL_PAGE_SUBTITLE ${LANG_CZECH} "Choose for which users to remove $(^NameDA)." + LangString MULTIUSER_INSTALL_HEADER ${LANG_CZECH} "Select whether to install $(^NameDA) for all users or for current user." + LangString MULTIUSER_UNINSTALL_HEADER ${LANG_CZECH} "$(^NameDA) is installed both for all users and for current user.$\r$\nSelect which installation to remove." + LangString MULTIUSER_ALL_USERS ${LANG_CZECH} "For &anyone who uses this computer (all users)" + LangString MULTIUSER_CURRENT_USER ${LANG_CZECH} "For &me ({USER})" + LangString MULTIUSER_ALL_USERS_UMUI ${LANG_CZECH} "For anyone who uses this computer (all users)" + LangString MULTIUSER_CURRENT_USER_UMUI ${LANG_CZECH} "For me ({USER})" + LangString MULTIUSER_NEW_INSTALLATION_ALL_USERS ${LANG_CZECH} "Fresh install for all users." + LangString MULTIUSER_NEW_INSTALLATION_CURRENT_USER ${LANG_CZECH} "Fresh install for current user." + LangString MULTIUSER_INSTALLED_ALL_USERS ${LANG_CZECH} "Version {VERSION} is installed for all users in $\"{FOLDER}$\"." + LangString MULTIUSER_INSTALLED_CURRENT_USER ${LANG_CZECH} "Version {VERSION} is installed for current user in $\"{FOLDER}$\"." + LangString MULTIUSER_REINSTALL_SAME_VERSION_ALL_USERS ${LANG_CZECH} "Reinstall version {VERSION} for all users." + LangString MULTIUSER_REINSTALL_SAME_VERSION_CURRENT_USER ${LANG_CZECH} "Reinstall version {VERSION} for current user." + LangString MULTIUSER_REINSTALL_DIFF_VERSION_ALL_USERS ${LANG_CZECH} "Uninstall version {OLD_VERSION} and install version {VERSION} for all users." + LangString MULTIUSER_REINSTALL_DIFF_VERSION_CURRENT_USER ${LANG_CZECH} "Uninstall version {OLD_VERSION} and install version {VERSION} for current user." + LangString MULTIUSER_RUN_AS_ADMIN ${LANG_CZECH} "You need to run this program as administrator." + LangString MULTIUSER_ADMIN_CREDENTIALS_REQUIRED ${LANG_CZECH} "Administrator credentials required." + LangString MULTIUSER_ADMIN_UNINSTALL_CREDENTIALS_REQUIRED ${LANG_CZECH} "Administrator credentials required for uninstall." + ; error messages - not so important + LangString MULTIUSER_INVALID_PARAMS ${LANG_CZECH} "Invalid combination of paramaters." + LangString MULTIUSER_NOT_INSTALLED ${LANG_CZECH} "There is no installation of $(^NameDA)." + LangString MULTIUSER_INSTALLATION_FOR_CURRENT_USER_NOT_SUPPORTED ${LANG_CZECH} "The operating system doesn't support current user installations." + LangString MULTIUSER_ADMIN_ACCOUNT_LOGIN_REQUIRED ${LANG_CZECH} "You need to login with an account that is a member of the administrators group to continue." + LangString MULTIUSER_ELEVATION_NOT_SUPPORTED ${LANG_CZECH} "The operating system doesn't support elevation." + LangString MULTIUSER_LOGON_SERVICE_NOT_RUNNING ${LANG_CZECH} "Unable to elevate, Secondary Logon service not running." + LangString MULTIUSER_ELEVATION_ERROR ${LANG_CZECH} "Unable to elevate, error {ERROR}." +!endif + +!ifdef LANG_DANISH + LangString MULTIUSER_PAGE_TITLE ${LANG_DANISH} "Choose Users" + LangString MULTIUSER_INSTALL_PAGE_SUBTITLE ${LANG_DANISH} "Choose for which users to install $(^NameDA)." + LangString MULTIUSER_UNINSTALL_PAGE_SUBTITLE ${LANG_DANISH} "Choose for which users to remove $(^NameDA)." + LangString MULTIUSER_INSTALL_HEADER ${LANG_DANISH} "Select whether to install $(^NameDA) for all users or for current user." + LangString MULTIUSER_UNINSTALL_HEADER ${LANG_DANISH} "$(^NameDA) is installed both for all users and for current user.$\r$\nSelect which installation to remove." + LangString MULTIUSER_ALL_USERS ${LANG_DANISH} "For &anyone who uses this computer (all users)" + LangString MULTIUSER_CURRENT_USER ${LANG_DANISH} "For &me ({USER})" + LangString MULTIUSER_ALL_USERS_UMUI ${LANG_DANISH} "For anyone who uses this computer (all users)" + LangString MULTIUSER_CURRENT_USER_UMUI ${LANG_DANISH} "For me ({USER})" + LangString MULTIUSER_NEW_INSTALLATION_ALL_USERS ${LANG_DANISH} "Fresh install for all users." + LangString MULTIUSER_NEW_INSTALLATION_CURRENT_USER ${LANG_DANISH} "Fresh install for current user." + LangString MULTIUSER_INSTALLED_ALL_USERS ${LANG_DANISH} "Version {VERSION} is installed for all users in $\"{FOLDER}$\"." + LangString MULTIUSER_INSTALLED_CURRENT_USER ${LANG_DANISH} "Version {VERSION} is installed for current user in $\"{FOLDER}$\"." + LangString MULTIUSER_REINSTALL_SAME_VERSION_ALL_USERS ${LANG_DANISH} "Reinstall version {VERSION} for all users." + LangString MULTIUSER_REINSTALL_SAME_VERSION_CURRENT_USER ${LANG_DANISH} "Reinstall version {VERSION} for current user." + LangString MULTIUSER_REINSTALL_DIFF_VERSION_ALL_USERS ${LANG_DANISH} "Uninstall version {OLD_VERSION} and install version {VERSION} for all users." + LangString MULTIUSER_REINSTALL_DIFF_VERSION_CURRENT_USER ${LANG_DANISH} "Uninstall version {OLD_VERSION} and install version {VERSION} for current user." + LangString MULTIUSER_RUN_AS_ADMIN ${LANG_DANISH} "You need to run this program as administrator." + LangString MULTIUSER_ADMIN_CREDENTIALS_REQUIRED ${LANG_DANISH} "Administrator credentials required." + LangString MULTIUSER_ADMIN_UNINSTALL_CREDENTIALS_REQUIRED ${LANG_DANISH} "Administrator credentials required for uninstall." + ; error messages - not so important + LangString MULTIUSER_INVALID_PARAMS ${LANG_DANISH} "Invalid combination of paramaters." + LangString MULTIUSER_NOT_INSTALLED ${LANG_DANISH} "There is no installation of $(^NameDA)." + LangString MULTIUSER_INSTALLATION_FOR_CURRENT_USER_NOT_SUPPORTED ${LANG_DANISH} "The operating system doesn't support current user installations." + LangString MULTIUSER_ADMIN_ACCOUNT_LOGIN_REQUIRED ${LANG_DANISH} "You need to login with an account that is a member of the administrators group to continue." + LangString MULTIUSER_ELEVATION_NOT_SUPPORTED ${LANG_DANISH} "The operating system doesn't support elevation." + LangString MULTIUSER_LOGON_SERVICE_NOT_RUNNING ${LANG_DANISH} "Unable to elevate, Secondary Logon service not running." + LangString MULTIUSER_ELEVATION_ERROR ${LANG_DANISH} "Unable to elevate, error {ERROR}." +!endif + +!ifdef LANG_DUTCH + LangString MULTIUSER_PAGE_TITLE ${LANG_DUTCH} "Choose Users" + LangString MULTIUSER_INSTALL_PAGE_SUBTITLE ${LANG_DUTCH} "Choose for which users to install $(^NameDA)." + LangString MULTIUSER_UNINSTALL_PAGE_SUBTITLE ${LANG_DUTCH} "Choose for which users to remove $(^NameDA)." + LangString MULTIUSER_INSTALL_HEADER ${LANG_DUTCH} "Select whether to install $(^NameDA) for all users or for current user." + LangString MULTIUSER_UNINSTALL_HEADER ${LANG_DUTCH} "$(^NameDA) is installed both for all users and for current user.$\r$\nSelect which installation to remove." + LangString MULTIUSER_ALL_USERS ${LANG_DUTCH} "For &anyone who uses this computer (all users)" + LangString MULTIUSER_CURRENT_USER ${LANG_DUTCH} "For &me ({USER})" + LangString MULTIUSER_ALL_USERS_UMUI ${LANG_DUTCH} "For anyone who uses this computer (all users)" + LangString MULTIUSER_CURRENT_USER_UMUI ${LANG_DUTCH} "For me ({USER})" + LangString MULTIUSER_NEW_INSTALLATION_ALL_USERS ${LANG_DUTCH} "Fresh install for all users." + LangString MULTIUSER_NEW_INSTALLATION_CURRENT_USER ${LANG_DUTCH} "Fresh install for current user." + LangString MULTIUSER_INSTALLED_ALL_USERS ${LANG_DUTCH} "Version {VERSION} is installed for all users in $\"{FOLDER}$\"." + LangString MULTIUSER_INSTALLED_CURRENT_USER ${LANG_DUTCH} "Version {VERSION} is installed for current user in $\"{FOLDER}$\"." + LangString MULTIUSER_REINSTALL_SAME_VERSION_ALL_USERS ${LANG_DUTCH} "Reinstall version {VERSION} for all users." + LangString MULTIUSER_REINSTALL_SAME_VERSION_CURRENT_USER ${LANG_DUTCH} "Reinstall version {VERSION} for current user." + LangString MULTIUSER_REINSTALL_DIFF_VERSION_ALL_USERS ${LANG_DUTCH} "Uninstall version {OLD_VERSION} and install version {VERSION} for all users." + LangString MULTIUSER_REINSTALL_DIFF_VERSION_CURRENT_USER ${LANG_DUTCH} "Uninstall version {OLD_VERSION} and install version {VERSION} for current user." + LangString MULTIUSER_RUN_AS_ADMIN ${LANG_DUTCH} "You need to run this program as administrator." + LangString MULTIUSER_ADMIN_CREDENTIALS_REQUIRED ${LANG_DUTCH} "Administrator credentials required." + LangString MULTIUSER_ADMIN_UNINSTALL_CREDENTIALS_REQUIRED ${LANG_DUTCH} "Administrator credentials required for uninstall." + ; error messages - not so important + LangString MULTIUSER_INVALID_PARAMS ${LANG_DUTCH} "Invalid combination of paramaters." + LangString MULTIUSER_NOT_INSTALLED ${LANG_DUTCH} "There is no installation of $(^NameDA)." + LangString MULTIUSER_INSTALLATION_FOR_CURRENT_USER_NOT_SUPPORTED ${LANG_DUTCH} "The operating system doesn't support current user installations." + LangString MULTIUSER_ADMIN_ACCOUNT_LOGIN_REQUIRED ${LANG_DUTCH} "You need to login with an account that is a member of the administrators group to continue." + LangString MULTIUSER_ELEVATION_NOT_SUPPORTED ${LANG_DUTCH} "The operating system doesn't support elevation." + LangString MULTIUSER_LOGON_SERVICE_NOT_RUNNING ${LANG_DUTCH} "Unable to elevate, Secondary Logon service not running." + LangString MULTIUSER_ELEVATION_ERROR ${LANG_DUTCH} "Unable to elevate, error {ERROR}." +!endif + +!ifdef LANG_ESPERANTO + LangString MULTIUSER_PAGE_TITLE ${LANG_ESPERANTO} "Choose Users" + LangString MULTIUSER_INSTALL_PAGE_SUBTITLE ${LANG_ESPERANTO} "Choose for which users to install $(^NameDA)." + LangString MULTIUSER_UNINSTALL_PAGE_SUBTITLE ${LANG_ESPERANTO} "Choose for which users to remove $(^NameDA)." + LangString MULTIUSER_INSTALL_HEADER ${LANG_ESPERANTO} "Select whether to install $(^NameDA) for all users or for current user." + LangString MULTIUSER_UNINSTALL_HEADER ${LANG_ESPERANTO} "$(^NameDA) is installed both for all users and for current user.$\r$\nSelect which installation to remove." + LangString MULTIUSER_ALL_USERS ${LANG_ESPERANTO} "For &anyone who uses this computer (all users)" + LangString MULTIUSER_CURRENT_USER ${LANG_ESPERANTO} "For &me ({USER})" + LangString MULTIUSER_ALL_USERS_UMUI ${LANG_ESPERANTO} "For anyone who uses this computer (all users)" + LangString MULTIUSER_CURRENT_USER_UMUI ${LANG_ESPERANTO} "For me ({USER})" + LangString MULTIUSER_NEW_INSTALLATION_ALL_USERS ${LANG_ESPERANTO} "Fresh install for all users." + LangString MULTIUSER_NEW_INSTALLATION_CURRENT_USER ${LANG_ESPERANTO} "Fresh install for current user." + LangString MULTIUSER_INSTALLED_ALL_USERS ${LANG_ESPERANTO} "Version {VERSION} is installed for all users in $\"{FOLDER}$\"." + LangString MULTIUSER_INSTALLED_CURRENT_USER ${LANG_ESPERANTO} "Version {VERSION} is installed for current user in $\"{FOLDER}$\"." + LangString MULTIUSER_REINSTALL_SAME_VERSION_ALL_USERS ${LANG_ESPERANTO} "Reinstall version {VERSION} for all users." + LangString MULTIUSER_REINSTALL_SAME_VERSION_CURRENT_USER ${LANG_ESPERANTO} "Reinstall version {VERSION} for current user." + LangString MULTIUSER_REINSTALL_DIFF_VERSION_ALL_USERS ${LANG_ESPERANTO} "Uninstall version {OLD_VERSION} and install version {VERSION} for all users." + LangString MULTIUSER_REINSTALL_DIFF_VERSION_CURRENT_USER ${LANG_ESPERANTO} "Uninstall version {OLD_VERSION} and install version {VERSION} for current user." + LangString MULTIUSER_RUN_AS_ADMIN ${LANG_ESPERANTO} "You need to run this program as administrator." + LangString MULTIUSER_ADMIN_CREDENTIALS_REQUIRED ${LANG_ESPERANTO} "Administrator credentials required." + LangString MULTIUSER_ADMIN_UNINSTALL_CREDENTIALS_REQUIRED ${LANG_ESPERANTO} "Administrator credentials required for uninstall." + ; error messages - not so important + LangString MULTIUSER_INVALID_PARAMS ${LANG_ESPERANTO} "Invalid combination of paramaters." + LangString MULTIUSER_NOT_INSTALLED ${LANG_ESPERANTO} "There is no installation of $(^NameDA)." + LangString MULTIUSER_INSTALLATION_FOR_CURRENT_USER_NOT_SUPPORTED ${LANG_ESPERANTO} "The operating system doesn't support current user installations." + LangString MULTIUSER_ADMIN_ACCOUNT_LOGIN_REQUIRED ${LANG_ESPERANTO} "You need to login with an account that is a member of the administrators group to continue." + LangString MULTIUSER_ELEVATION_NOT_SUPPORTED ${LANG_ESPERANTO} "The operating system doesn't support elevation." + LangString MULTIUSER_LOGON_SERVICE_NOT_RUNNING ${LANG_ESPERANTO} "Unable to elevate, Secondary Logon service not running." + LangString MULTIUSER_ELEVATION_ERROR ${LANG_ESPERANTO} "Unable to elevate, error {ERROR}." +!endif + +!ifdef LANG_ESTONIAN + LangString MULTIUSER_PAGE_TITLE ${LANG_ESTONIAN} "Choose Users" + LangString MULTIUSER_INSTALL_PAGE_SUBTITLE ${LANG_ESTONIAN} "Choose for which users to install $(^NameDA)." + LangString MULTIUSER_UNINSTALL_PAGE_SUBTITLE ${LANG_ESTONIAN} "Choose for which users to remove $(^NameDA)." + LangString MULTIUSER_INSTALL_HEADER ${LANG_ESTONIAN} "Select whether to install $(^NameDA) for all users or for current user." + LangString MULTIUSER_UNINSTALL_HEADER ${LANG_ESTONIAN} "$(^NameDA) is installed both for all users and for current user.$\r$\nSelect which installation to remove." + LangString MULTIUSER_ALL_USERS ${LANG_ESTONIAN} "For &anyone who uses this computer (all users)" + LangString MULTIUSER_CURRENT_USER ${LANG_ESTONIAN} "For &me ({USER})" + LangString MULTIUSER_ALL_USERS_UMUI ${LANG_ESTONIAN} "For anyone who uses this computer (all users)" + LangString MULTIUSER_CURRENT_USER_UMUI ${LANG_ESTONIAN} "For me ({USER})" + LangString MULTIUSER_NEW_INSTALLATION_ALL_USERS ${LANG_ESTONIAN} "Fresh install for all users." + LangString MULTIUSER_NEW_INSTALLATION_CURRENT_USER ${LANG_ESTONIAN} "Fresh install for current user." + LangString MULTIUSER_INSTALLED_ALL_USERS ${LANG_ESTONIAN} "Version {VERSION} is installed for all users in $\"{FOLDER}$\"." + LangString MULTIUSER_INSTALLED_CURRENT_USER ${LANG_ESTONIAN} "Version {VERSION} is installed for current user in $\"{FOLDER}$\"." + LangString MULTIUSER_REINSTALL_SAME_VERSION_ALL_USERS ${LANG_ESTONIAN} "Reinstall version {VERSION} for all users." + LangString MULTIUSER_REINSTALL_SAME_VERSION_CURRENT_USER ${LANG_ESTONIAN} "Reinstall version {VERSION} for current user." + LangString MULTIUSER_REINSTALL_DIFF_VERSION_ALL_USERS ${LANG_ESTONIAN} "Uninstall version {OLD_VERSION} and install version {VERSION} for all users." + LangString MULTIUSER_REINSTALL_DIFF_VERSION_CURRENT_USER ${LANG_ESTONIAN} "Uninstall version {OLD_VERSION} and install version {VERSION} for current user." + LangString MULTIUSER_RUN_AS_ADMIN ${LANG_ESTONIAN} "You need to run this program as administrator." + LangString MULTIUSER_ADMIN_CREDENTIALS_REQUIRED ${LANG_ESTONIAN} "Administrator credentials required." + LangString MULTIUSER_ADMIN_UNINSTALL_CREDENTIALS_REQUIRED ${LANG_ESTONIAN} "Administrator credentials required for uninstall." + ; error messages - not so important + LangString MULTIUSER_INVALID_PARAMS ${LANG_ESTONIAN} "Invalid combination of paramaters." + LangString MULTIUSER_NOT_INSTALLED ${LANG_ESTONIAN} "There is no installation of $(^NameDA)." + LangString MULTIUSER_INSTALLATION_FOR_CURRENT_USER_NOT_SUPPORTED ${LANG_ESTONIAN} "The operating system doesn't support current user installations." + LangString MULTIUSER_ADMIN_ACCOUNT_LOGIN_REQUIRED ${LANG_ESTONIAN} "You need to login with an account that is a member of the administrators group to continue." + LangString MULTIUSER_ELEVATION_NOT_SUPPORTED ${LANG_ESTONIAN} "The operating system doesn't support elevation." + LangString MULTIUSER_LOGON_SERVICE_NOT_RUNNING ${LANG_ESTONIAN} "Unable to elevate, Secondary Logon service not running." + LangString MULTIUSER_ELEVATION_ERROR ${LANG_ESTONIAN} "Unable to elevate, error {ERROR}." +!endif + +!ifdef LANG_FARSI + LangString MULTIUSER_PAGE_TITLE ${LANG_FARSI} "Choose Users" + LangString MULTIUSER_INSTALL_PAGE_SUBTITLE ${LANG_FARSI} "Choose for which users to install $(^NameDA)." + LangString MULTIUSER_UNINSTALL_PAGE_SUBTITLE ${LANG_FARSI} "Choose for which users to remove $(^NameDA)." + LangString MULTIUSER_INSTALL_HEADER ${LANG_FARSI} "Select whether to install $(^NameDA) for all users or for current user." + LangString MULTIUSER_UNINSTALL_HEADER ${LANG_FARSI} "$(^NameDA) is installed both for all users and for current user.$\r$\nSelect which installation to remove." + LangString MULTIUSER_ALL_USERS ${LANG_FARSI} "For &anyone who uses this computer (all users)" + LangString MULTIUSER_CURRENT_USER ${LANG_FARSI} "For &me ({USER})" + LangString MULTIUSER_ALL_USERS_UMUI ${LANG_FARSI} "For anyone who uses this computer (all users)" + LangString MULTIUSER_CURRENT_USER_UMUI ${LANG_FARSI} "For me ({USER})" + LangString MULTIUSER_NEW_INSTALLATION_ALL_USERS ${LANG_FARSI} "Fresh install for all users." + LangString MULTIUSER_NEW_INSTALLATION_CURRENT_USER ${LANG_FARSI} "Fresh install for current user." + LangString MULTIUSER_INSTALLED_ALL_USERS ${LANG_FARSI} "Version {VERSION} is installed for all users in $\"{FOLDER}$\"." + LangString MULTIUSER_INSTALLED_CURRENT_USER ${LANG_FARSI} "Version {VERSION} is installed for current user in $\"{FOLDER}$\"." + LangString MULTIUSER_REINSTALL_SAME_VERSION_ALL_USERS ${LANG_FARSI} "Reinstall version {VERSION} for all users." + LangString MULTIUSER_REINSTALL_SAME_VERSION_CURRENT_USER ${LANG_FARSI} "Reinstall version {VERSION} for current user." + LangString MULTIUSER_REINSTALL_DIFF_VERSION_ALL_USERS ${LANG_FARSI} "Uninstall version {OLD_VERSION} and install version {VERSION} for all users." + LangString MULTIUSER_REINSTALL_DIFF_VERSION_CURRENT_USER ${LANG_FARSI} "Uninstall version {OLD_VERSION} and install version {VERSION} for current user." + LangString MULTIUSER_RUN_AS_ADMIN ${LANG_FARSI} "You need to run this program as administrator." + LangString MULTIUSER_ADMIN_CREDENTIALS_REQUIRED ${LANG_FARSI} "Administrator credentials required." + LangString MULTIUSER_ADMIN_UNINSTALL_CREDENTIALS_REQUIRED ${LANG_FARSI} "Administrator credentials required for uninstall." + ; error messages - not so important + LangString MULTIUSER_INVALID_PARAMS ${LANG_FARSI} "Invalid combination of paramaters." + LangString MULTIUSER_NOT_INSTALLED ${LANG_FARSI} "There is no installation of $(^NameDA)." + LangString MULTIUSER_INSTALLATION_FOR_CURRENT_USER_NOT_SUPPORTED ${LANG_FARSI} "The operating system doesn't support current user installations." + LangString MULTIUSER_ADMIN_ACCOUNT_LOGIN_REQUIRED ${LANG_FARSI} "You need to login with an account that is a member of the administrators group to continue." + LangString MULTIUSER_ELEVATION_NOT_SUPPORTED ${LANG_FARSI} "The operating system doesn't support elevation." + LangString MULTIUSER_LOGON_SERVICE_NOT_RUNNING ${LANG_FARSI} "Unable to elevate, Secondary Logon service not running." + LangString MULTIUSER_ELEVATION_ERROR ${LANG_FARSI} "Unable to elevate, error {ERROR}." +!endif + +!ifdef LANG_FINNISH + LangString MULTIUSER_PAGE_TITLE ${LANG_FINNISH} "Choose Users" + LangString MULTIUSER_INSTALL_PAGE_SUBTITLE ${LANG_FINNISH} "Choose for which users to install $(^NameDA)." + LangString MULTIUSER_UNINSTALL_PAGE_SUBTITLE ${LANG_FINNISH} "Choose for which users to remove $(^NameDA)." + LangString MULTIUSER_INSTALL_HEADER ${LANG_FINNISH} "Select whether to install $(^NameDA) for all users or for current user." + LangString MULTIUSER_UNINSTALL_HEADER ${LANG_FINNISH} "$(^NameDA) is installed both for all users and for current user.$\r$\nSelect which installation to remove." + LangString MULTIUSER_ALL_USERS ${LANG_FINNISH} "For &anyone who uses this computer (all users)" + LangString MULTIUSER_CURRENT_USER ${LANG_FINNISH} "For &me ({USER})" + LangString MULTIUSER_ALL_USERS_UMUI ${LANG_FINNISH} "For anyone who uses this computer (all users)" + LangString MULTIUSER_CURRENT_USER_UMUI ${LANG_FINNISH} "For me ({USER})" + LangString MULTIUSER_NEW_INSTALLATION_ALL_USERS ${LANG_FINNISH} "Fresh install for all users." + LangString MULTIUSER_NEW_INSTALLATION_CURRENT_USER ${LANG_FINNISH} "Fresh install for current user." + LangString MULTIUSER_INSTALLED_ALL_USERS ${LANG_FINNISH} "Version {VERSION} is installed for all users in $\"{FOLDER}$\"." + LangString MULTIUSER_INSTALLED_CURRENT_USER ${LANG_FINNISH} "Version {VERSION} is installed for current user in $\"{FOLDER}$\"." + LangString MULTIUSER_REINSTALL_SAME_VERSION_ALL_USERS ${LANG_FINNISH} "Reinstall version {VERSION} for all users." + LangString MULTIUSER_REINSTALL_SAME_VERSION_CURRENT_USER ${LANG_FINNISH} "Reinstall version {VERSION} for current user." + LangString MULTIUSER_REINSTALL_DIFF_VERSION_ALL_USERS ${LANG_FINNISH} "Uninstall version {OLD_VERSION} and install version {VERSION} for all users." + LangString MULTIUSER_REINSTALL_DIFF_VERSION_CURRENT_USER ${LANG_FINNISH} "Uninstall version {OLD_VERSION} and install version {VERSION} for current user." + LangString MULTIUSER_RUN_AS_ADMIN ${LANG_FINNISH} "You need to run this program as administrator." + LangString MULTIUSER_ADMIN_CREDENTIALS_REQUIRED ${LANG_FINNISH} "Administrator credentials required." + LangString MULTIUSER_ADMIN_UNINSTALL_CREDENTIALS_REQUIRED ${LANG_FINNISH} "Administrator credentials required for uninstall." + ; error messages - not so important + LangString MULTIUSER_INVALID_PARAMS ${LANG_FINNISH} "Invalid combination of paramaters." + LangString MULTIUSER_NOT_INSTALLED ${LANG_FINNISH} "There is no installation of $(^NameDA)." + LangString MULTIUSER_INSTALLATION_FOR_CURRENT_USER_NOT_SUPPORTED ${LANG_FINNISH} "The operating system doesn't support current user installations." + LangString MULTIUSER_ADMIN_ACCOUNT_LOGIN_REQUIRED ${LANG_FINNISH} "You need to login with an account that is a member of the administrators group to continue." + LangString MULTIUSER_ELEVATION_NOT_SUPPORTED ${LANG_FINNISH} "The operating system doesn't support elevation." + LangString MULTIUSER_LOGON_SERVICE_NOT_RUNNING ${LANG_FINNISH} "Unable to elevate, Secondary Logon service not running." + LangString MULTIUSER_ELEVATION_ERROR ${LANG_FINNISH} "Unable to elevate, error {ERROR}." +!endif + +!ifdef LANG_FRENCH + LangString MULTIUSER_PAGE_TITLE ${LANG_FRENCH} "Choose Users" + LangString MULTIUSER_INSTALL_PAGE_SUBTITLE ${LANG_FRENCH} "Choose for which users to install $(^NameDA)." + LangString MULTIUSER_UNINSTALL_PAGE_SUBTITLE ${LANG_FRENCH} "Choose for which users to remove $(^NameDA)." + LangString MULTIUSER_INSTALL_HEADER ${LANG_FRENCH} "Select whether to install $(^NameDA) for all users or for current user." + LangString MULTIUSER_UNINSTALL_HEADER ${LANG_FRENCH} "$(^NameDA) is installed both for all users and for current user.$\r$\nSelect which installation to remove." + LangString MULTIUSER_ALL_USERS ${LANG_FRENCH} "For &anyone who uses this computer (all users)" + LangString MULTIUSER_CURRENT_USER ${LANG_FRENCH} "For &me ({USER})" + LangString MULTIUSER_ALL_USERS_UMUI ${LANG_FRENCH} "For anyone who uses this computer (all users)" + LangString MULTIUSER_CURRENT_USER_UMUI ${LANG_FRENCH} "For me ({USER})" + LangString MULTIUSER_NEW_INSTALLATION_ALL_USERS ${LANG_FRENCH} "Fresh install for all users." + LangString MULTIUSER_NEW_INSTALLATION_CURRENT_USER ${LANG_FRENCH} "Fresh install for current user." + LangString MULTIUSER_INSTALLED_ALL_USERS ${LANG_FRENCH} "Version {VERSION} is installed for all users in $\"{FOLDER}$\"." + LangString MULTIUSER_INSTALLED_CURRENT_USER ${LANG_FRENCH} "Version {VERSION} is installed for current user in $\"{FOLDER}$\"." + LangString MULTIUSER_REINSTALL_SAME_VERSION_ALL_USERS ${LANG_FRENCH} "Reinstall version {VERSION} for all users." + LangString MULTIUSER_REINSTALL_SAME_VERSION_CURRENT_USER ${LANG_FRENCH} "Reinstall version {VERSION} for current user." + LangString MULTIUSER_REINSTALL_DIFF_VERSION_ALL_USERS ${LANG_FRENCH} "Uninstall version {OLD_VERSION} and install version {VERSION} for all users." + LangString MULTIUSER_REINSTALL_DIFF_VERSION_CURRENT_USER ${LANG_FRENCH} "Uninstall version {OLD_VERSION} and install version {VERSION} for current user." + LangString MULTIUSER_RUN_AS_ADMIN ${LANG_FRENCH} "You need to run this program as administrator." + LangString MULTIUSER_ADMIN_CREDENTIALS_REQUIRED ${LANG_FRENCH} "Administrator credentials required." + LangString MULTIUSER_ADMIN_UNINSTALL_CREDENTIALS_REQUIRED ${LANG_FRENCH} "Administrator credentials required for uninstall." + ; error messages - not so important + LangString MULTIUSER_INVALID_PARAMS ${LANG_FRENCH} "Invalid combination of paramaters." + LangString MULTIUSER_NOT_INSTALLED ${LANG_FRENCH} "There is no installation of $(^NameDA)." + LangString MULTIUSER_INSTALLATION_FOR_CURRENT_USER_NOT_SUPPORTED ${LANG_FRENCH} "The operating system doesn't support current user installations." + LangString MULTIUSER_ADMIN_ACCOUNT_LOGIN_REQUIRED ${LANG_FRENCH} "You need to login with an account that is a member of the administrators group to continue." + LangString MULTIUSER_ELEVATION_NOT_SUPPORTED ${LANG_FRENCH} "The operating system doesn't support elevation." + LangString MULTIUSER_LOGON_SERVICE_NOT_RUNNING ${LANG_FRENCH} "Unable to elevate, Secondary Logon service not running." + LangString MULTIUSER_ELEVATION_ERROR ${LANG_FRENCH} "Unable to elevate, error {ERROR}." +!endif + +!ifdef LANG_GALICIAN + LangString MULTIUSER_PAGE_TITLE ${LANG_GALICIAN} "Choose Users" + LangString MULTIUSER_INSTALL_PAGE_SUBTITLE ${LANG_GALICIAN} "Choose for which users to install $(^NameDA)." + LangString MULTIUSER_UNINSTALL_PAGE_SUBTITLE ${LANG_GALICIAN} "Choose for which users to remove $(^NameDA)." + LangString MULTIUSER_INSTALL_HEADER ${LANG_GALICIAN} "Select whether to install $(^NameDA) for all users or for current user." + LangString MULTIUSER_UNINSTALL_HEADER ${LANG_GALICIAN} "$(^NameDA) is installed both for all users and for current user.$\r$\nSelect which installation to remove." + LangString MULTIUSER_ALL_USERS ${LANG_GALICIAN} "For &anyone who uses this computer (all users)" + LangString MULTIUSER_CURRENT_USER ${LANG_GALICIAN} "For &me ({USER})" + LangString MULTIUSER_ALL_USERS_UMUI ${LANG_GALICIAN} "For anyone who uses this computer (all users)" + LangString MULTIUSER_CURRENT_USER_UMUI ${LANG_GALICIAN} "For me ({USER})" + LangString MULTIUSER_NEW_INSTALLATION_ALL_USERS ${LANG_GALICIAN} "Fresh install for all users." + LangString MULTIUSER_NEW_INSTALLATION_CURRENT_USER ${LANG_GALICIAN} "Fresh install for current user." + LangString MULTIUSER_INSTALLED_ALL_USERS ${LANG_GALICIAN} "Version {VERSION} is installed for all users in $\"{FOLDER}$\"." + LangString MULTIUSER_INSTALLED_CURRENT_USER ${LANG_GALICIAN} "Version {VERSION} is installed for current user in $\"{FOLDER}$\"." + LangString MULTIUSER_REINSTALL_SAME_VERSION_ALL_USERS ${LANG_GALICIAN} "Reinstall version {VERSION} for all users." + LangString MULTIUSER_REINSTALL_SAME_VERSION_CURRENT_USER ${LANG_GALICIAN} "Reinstall version {VERSION} for current user." + LangString MULTIUSER_REINSTALL_DIFF_VERSION_ALL_USERS ${LANG_GALICIAN} "Uninstall version {OLD_VERSION} and install version {VERSION} for all users." + LangString MULTIUSER_REINSTALL_DIFF_VERSION_CURRENT_USER ${LANG_GALICIAN} "Uninstall version {OLD_VERSION} and install version {VERSION} for current user." + LangString MULTIUSER_RUN_AS_ADMIN ${LANG_GALICIAN} "You need to run this program as administrator." + LangString MULTIUSER_ADMIN_CREDENTIALS_REQUIRED ${LANG_GALICIAN} "Administrator credentials required." + LangString MULTIUSER_ADMIN_UNINSTALL_CREDENTIALS_REQUIRED ${LANG_GALICIAN} "Administrator credentials required for uninstall." + ; error messages - not so important + LangString MULTIUSER_INVALID_PARAMS ${LANG_GALICIAN} "Invalid combination of paramaters." + LangString MULTIUSER_NOT_INSTALLED ${LANG_GALICIAN} "There is no installation of $(^NameDA)." + LangString MULTIUSER_INSTALLATION_FOR_CURRENT_USER_NOT_SUPPORTED ${LANG_GALICIAN} "The operating system doesn't support current user installations." + LangString MULTIUSER_ADMIN_ACCOUNT_LOGIN_REQUIRED ${LANG_GALICIAN} "You need to login with an account that is a member of the administrators group to continue." + LangString MULTIUSER_ELEVATION_NOT_SUPPORTED ${LANG_GALICIAN} "The operating system doesn't support elevation." + LangString MULTIUSER_LOGON_SERVICE_NOT_RUNNING ${LANG_GALICIAN} "Unable to elevate, Secondary Logon service not running." + LangString MULTIUSER_ELEVATION_ERROR ${LANG_GALICIAN} "Unable to elevate, error {ERROR}." +!endif + +!ifdef LANG_GEORGIAN + LangString MULTIUSER_PAGE_TITLE ${LANG_GEORGIAN} "Choose Users" + LangString MULTIUSER_INSTALL_PAGE_SUBTITLE ${LANG_GEORGIAN} "Choose for which users to install $(^NameDA)." + LangString MULTIUSER_UNINSTALL_PAGE_SUBTITLE ${LANG_GEORGIAN} "Choose for which users to remove $(^NameDA)." + LangString MULTIUSER_INSTALL_HEADER ${LANG_GEORGIAN} "Select whether to install $(^NameDA) for all users or for current user." + LangString MULTIUSER_UNINSTALL_HEADER ${LANG_GEORGIAN} "$(^NameDA) is installed both for all users and for current user.$\r$\nSelect which installation to remove." + LangString MULTIUSER_ALL_USERS ${LANG_GEORGIAN} "For anyone who uses this computer (all users)" + LangString MULTIUSER_ALL_USERS ${LANG_GEORGIAN} "For &anyone who uses this computer (all users)" + LangString MULTIUSER_CURRENT_USER ${LANG_GEORGIAN} "For &me ({USER})" + LangString MULTIUSER_ALL_USERS_UMUI ${LANG_GEORGIAN} "For anyone who uses this computer (all users)" + LangString MULTIUSER_CURRENT_USER_UMUI ${LANG_GEORGIAN} "For me ({USER})" + LangString MULTIUSER_NEW_INSTALLATION_CURRENT_USER ${LANG_GEORGIAN} "Fresh install for current user." + LangString MULTIUSER_INSTALLED_ALL_USERS ${LANG_GEORGIAN} "Version {VERSION} is installed for all users in $\"{FOLDER}$\"." + LangString MULTIUSER_INSTALLED_CURRENT_USER ${LANG_GEORGIAN} "Version {VERSION} is installed for current user in $\"{FOLDER}$\"." + LangString MULTIUSER_REINSTALL_SAME_VERSION_ALL_USERS ${LANG_GEORGIAN} "Reinstall version {VERSION} for all users." + LangString MULTIUSER_REINSTALL_SAME_VERSION_CURRENT_USER ${LANG_GEORGIAN} "Reinstall version {VERSION} for current user." + LangString MULTIUSER_REINSTALL_DIFF_VERSION_ALL_USERS ${LANG_GEORGIAN} "Uninstall version {OLD_VERSION} and install version {VERSION} for all users." + LangString MULTIUSER_REINSTALL_DIFF_VERSION_CURRENT_USER ${LANG_GEORGIAN} "Uninstall version {OLD_VERSION} and install version {VERSION} for current user." + LangString MULTIUSER_RUN_AS_ADMIN ${LANG_GEORGIAN} "You need to run this program as administrator." + LangString MULTIUSER_ADMIN_CREDENTIALS_REQUIRED ${LANG_GEORGIAN} "Administrator credentials required." + LangString MULTIUSER_ADMIN_UNINSTALL_CREDENTIALS_REQUIRED ${LANG_GEORGIAN} "Administrator credentials required for uninstall." + ; error messages - not so important + LangString MULTIUSER_INVALID_PARAMS ${LANG_GEORGIAN} "Invalid combination of paramaters." + LangString MULTIUSER_NOT_INSTALLED ${LANG_GEORGIAN} "There is no installation of $(^NameDA)." + LangString MULTIUSER_INSTALLATION_FOR_CURRENT_USER_NOT_SUPPORTED ${LANG_GEORGIAN} "The operating system doesn't support current user installations." + LangString MULTIUSER_ADMIN_ACCOUNT_LOGIN_REQUIRED ${LANG_GEORGIAN} "You need to login with an account that is a member of the administrators group to continue." + LangString MULTIUSER_ELEVATION_NOT_SUPPORTED ${LANG_GEORGIAN} "The operating system doesn't support elevation." + LangString MULTIUSER_LOGON_SERVICE_NOT_RUNNING ${LANG_GEORGIAN} "Unable to elevate, Secondary Logon service not running." + LangString MULTIUSER_ELEVATION_ERROR ${LANG_GEORGIAN} "Unable to elevate, error {ERROR}." +!endif + +!ifdef LANG_GERMAN + ; Translation on 2019-03-29 done by: https://github.com/Tobias-B-Besemer + LangString MULTIUSER_PAGE_TITLE ${LANG_GERMAN} "Wähle Benutzer" + LangString MULTIUSER_INSTALL_PAGE_SUBTITLE ${LANG_GERMAN} "Wähle für welche Benutzer $(^NameDA) installiert werden soll." + LangString MULTIUSER_UNINSTALL_PAGE_SUBTITLE ${LANG_GERMAN} "Wähle für welche Benutzer $(^NameDA) entfernt werden soll." + LangString MULTIUSER_INSTALL_HEADER ${LANG_GERMAN} "Selektiere entweder $(^NameDA) zu installieren für alle Benutzer, oder für aktuellen Benutzer." + LangString MULTIUSER_UNINSTALL_HEADER ${LANG_GERMAN} "$(^NameDA) ist installiert für beides, für alle Benutzer und für aktuellen Benutzer.$\r$\nWähle, welche Installation entfernt werden soll." + LangString MULTIUSER_ALL_USERS ${LANG_GERMAN} "Für &jeden, der diesen Computer benutzt (alle Benutzer)" + LangString MULTIUSER_CURRENT_USER ${LANG_GERMAN} "Für &mich ({USER})" + LangString MULTIUSER_ALL_USERS_UMUI ${LANG_GERMAN} "Für jeden, der diesen Computer benutzt (alle Benutzer)" + LangString MULTIUSER_CURRENT_USER_UMUI ${LANG_GERMAN} "Für mich ({USER})" + LangString MULTIUSER_NEW_INSTALLATION_ALL_USERS ${LANG_GERMAN} "Frische Installation für alle Benutzer." + LangString MULTIUSER_NEW_INSTALLATION_CURRENT_USER ${LANG_GERMAN} "Frische Installation für aktuellen Benutzer." + LangString MULTIUSER_INSTALLED_ALL_USERS ${LANG_GERMAN} "Version {VERSION} ist installiert für alle Benutzer in $\"{FOLDER}$\"." + LangString MULTIUSER_INSTALLED_CURRENT_USER ${LANG_GERMAN} "Version {VERSION} ist installiert für aktuellen Benutzer in $\"{FOLDER}$\"." + LangString MULTIUSER_REINSTALL_SAME_VERSION_ALL_USERS ${LANG_GERMAN} "Neuinstallation Version {VERSION} für alle Benutzer." + LangString MULTIUSER_REINSTALL_SAME_VERSION_CURRENT_USER ${LANG_GERMAN} "Neuinstallation Version {VERSION} für aktuellen Benutzer." + LangString MULTIUSER_REINSTALL_DIFF_VERSION_ALL_USERS ${LANG_GERMAN} "Deinstallation Version {OLD_VERSION} und Installation Version {VERSION} für alle Benutzer." + LangString MULTIUSER_REINSTALL_DIFF_VERSION_CURRENT_USER ${LANG_GERMAN} "Deinstallation Version {OLD_VERSION} und Installation Version {VERSION} für aktuellen Benutzer." + LangString MULTIUSER_RUN_AS_ADMIN ${LANG_GERMAN} "Du musst dieses Programm als Administrator ausführen." + LangString MULTIUSER_ADMIN_CREDENTIALS_REQUIRED ${LANG_GERMAN} "Administrator Anmeldedaten benötigt." + LangString MULTIUSER_ADMIN_UNINSTALL_CREDENTIALS_REQUIRED ${LANG_GERMAN} "Administrator Anmeldedaten benötigt für Deinstallation." + ; error messages - not so important + LangString MULTIUSER_INVALID_PARAMS ${LANG_GERMAN} "Unzulässige Kombination von Parametern." + LangString MULTIUSER_NOT_INSTALLED ${LANG_GERMAN} "Dort ist keine Installation von $(^NameDA)." + LangString MULTIUSER_INSTALLATION_FOR_CURRENT_USER_NOT_SUPPORTED ${LANG_GERMAN} "Das Betriebssystem unterstützt nicht Aktuelle-Benutzer-Installationen." + LangString MULTIUSER_ADMIN_ACCOUNT_LOGIN_REQUIRED ${LANG_GERMAN} "Du musst Dich mit einem Konto, dass ein Mitglied der Administratoren Gruppe ist, anmelden um fortzufahren." + LangString MULTIUSER_ELEVATION_NOT_SUPPORTED ${LANG_GERMAN} "Das Betriebssystem unterstützt nicht Hochstuffung." + LangString MULTIUSER_LOGON_SERVICE_NOT_RUNNING ${LANG_GERMAN} "Hochstuffung nicht möglich, zweiter Anmelde-Service läuft nicht." + LangString MULTIUSER_ELEVATION_ERROR ${LANG_GERMAN} "Hochstuffung nicht möglich, Fehler {ERROR}." +!endif + +!ifdef LANG_GREEK + LangString MULTIUSER_PAGE_TITLE ${LANG_GREEK} "Choose Users" + LangString MULTIUSER_INSTALL_PAGE_SUBTITLE ${LANG_GREEK} "Choose for which users to install $(^NameDA)." + LangString MULTIUSER_UNINSTALL_PAGE_SUBTITLE ${LANG_GREEK} "Choose for which users to remove $(^NameDA)." + LangString MULTIUSER_INSTALL_HEADER ${LANG_GREEK} "Select whether to install $(^NameDA) for all users or for current user." + LangString MULTIUSER_UNINSTALL_HEADER ${LANG_GREEK} "$(^NameDA) is installed both for all users and for current user.$\r$\nSelect which installation to remove." + LangString MULTIUSER_ALL_USERS ${LANG_GREEK} "For &anyone who uses this computer (all users)" + LangString MULTIUSER_CURRENT_USER ${LANG_GREEK} "For &me ({USER})" + LangString MULTIUSER_ALL_USERS_UMUI ${LANG_GREEK} "For anyone who uses this computer (all users)" + LangString MULTIUSER_CURRENT_USER_UMUI ${LANG_GREEK} "For me ({USER})" + LangString MULTIUSER_NEW_INSTALLATION_ALL_USERS ${LANG_GREEK} "Fresh install for all users." + LangString MULTIUSER_NEW_INSTALLATION_CURRENT_USER ${LANG_GREEK} "Fresh install for current user." + LangString MULTIUSER_INSTALLED_ALL_USERS ${LANG_GREEK} "Version {VERSION} is installed for all users in $\"{FOLDER}$\"." + LangString MULTIUSER_INSTALLED_CURRENT_USER ${LANG_GREEK} "Version {VERSION} is installed for current user in $\"{FOLDER}$\"." + LangString MULTIUSER_REINSTALL_SAME_VERSION_ALL_USERS ${LANG_GREEK} "Reinstall version {VERSION} for all users." + LangString MULTIUSER_REINSTALL_SAME_VERSION_CURRENT_USER ${LANG_GREEK} "Reinstall version {VERSION} for current user." + LangString MULTIUSER_REINSTALL_DIFF_VERSION_ALL_USERS ${LANG_GREEK} "Uninstall version {OLD_VERSION} and install version {VERSION} for all users." + LangString MULTIUSER_REINSTALL_DIFF_VERSION_CURRENT_USER ${LANG_GREEK} "Uninstall version {OLD_VERSION} and install version {VERSION} for current user." + LangString MULTIUSER_RUN_AS_ADMIN ${LANG_GREEK} "You need to run this program as administrator." + LangString MULTIUSER_ADMIN_CREDENTIALS_REQUIRED ${LANG_GREEK} "Administrator credentials required." + LangString MULTIUSER_ADMIN_UNINSTALL_CREDENTIALS_REQUIRED ${LANG_GREEK} "Administrator credentials required for uninstall." + ; error messages - not so important + LangString MULTIUSER_INVALID_PARAMS ${LANG_GREEK} "Invalid combination of paramaters." + LangString MULTIUSER_NOT_INSTALLED ${LANG_GREEK} "There is no installation of $(^NameDA)." + LangString MULTIUSER_INSTALLATION_FOR_CURRENT_USER_NOT_SUPPORTED ${LANG_GREEK} "The operating system doesn't support current user installations." + LangString MULTIUSER_ADMIN_ACCOUNT_LOGIN_REQUIRED ${LANG_GREEK} "You need to login with an account that is a member of the administrators group to continue." + LangString MULTIUSER_ELEVATION_NOT_SUPPORTED ${LANG_GREEK} "The operating system doesn't support elevation." + LangString MULTIUSER_LOGON_SERVICE_NOT_RUNNING ${LANG_GREEK} "Unable to elevate, Secondary Logon service not running." + LangString MULTIUSER_ELEVATION_ERROR ${LANG_GREEK} "Unable to elevate, error {ERROR}." +!endif + +!ifdef LANG_HEBREW + LangString MULTIUSER_PAGE_TITLE ${LANG_HEBREW} "Choose Users" + LangString MULTIUSER_INSTALL_PAGE_SUBTITLE ${LANG_HEBREW} "Choose for which users to install $(^NameDA)." + LangString MULTIUSER_UNINSTALL_PAGE_SUBTITLE ${LANG_HEBREW} "Choose for which users to remove $(^NameDA)." + LangString MULTIUSER_INSTALL_HEADER ${LANG_HEBREW} "Select whether to install $(^NameDA) for all users or for current user." + LangString MULTIUSER_UNINSTALL_HEADER ${LANG_HEBREW} "$(^NameDA) is installed both for all users and for current user.$\r$\nSelect which installation to remove." + LangString MULTIUSER_ALL_USERS ${LANG_HEBREW} "For &anyone who uses this computer (all users)" + LangString MULTIUSER_CURRENT_USER ${LANG_HEBREW} "For &me ({USER})" + LangString MULTIUSER_ALL_USERS_UMUI ${LANG_HEBREW} "For anyone who uses this computer (all users)" + LangString MULTIUSER_CURRENT_USER_UMUI ${LANG_HEBREW} "For me ({USER})" + LangString MULTIUSER_NEW_INSTALLATION_ALL_USERS ${LANG_HEBREW} "Fresh install for all users." + LangString MULTIUSER_NEW_INSTALLATION_CURRENT_USER ${LANG_HEBREW} "Fresh install for current user." + LangString MULTIUSER_INSTALLED_ALL_USERS ${LANG_HEBREW} "Version {VERSION} is installed for all users in $\"{FOLDER}$\"." + LangString MULTIUSER_INSTALLED_CURRENT_USER ${LANG_HEBREW} "Version {VERSION} is installed for current user in $\"{FOLDER}$\"." + LangString MULTIUSER_REINSTALL_SAME_VERSION_ALL_USERS ${LANG_HEBREW} "Reinstall version {VERSION} for all users." + LangString MULTIUSER_REINSTALL_SAME_VERSION_CURRENT_USER ${LANG_HEBREW} "Reinstall version {VERSION} for current user." + LangString MULTIUSER_REINSTALL_DIFF_VERSION_ALL_USERS ${LANG_HEBREW} "Uninstall version {OLD_VERSION} and install version {VERSION} for all users." + LangString MULTIUSER_REINSTALL_DIFF_VERSION_CURRENT_USER ${LANG_HEBREW} "Uninstall version {OLD_VERSION} and install version {VERSION} for current user." + LangString MULTIUSER_RUN_AS_ADMIN ${LANG_HEBREW} "You need to run this program as administrator." + LangString MULTIUSER_ADMIN_CREDENTIALS_REQUIRED ${LANG_HEBREW} "Administrator credentials required." + LangString MULTIUSER_ADMIN_UNINSTALL_CREDENTIALS_REQUIRED ${LANG_HEBREW} "Administrator credentials required for uninstall." + ; error messages - not so important + LangString MULTIUSER_INVALID_PARAMS ${LANG_HEBREW} "Invalid combination of paramaters." + LangString MULTIUSER_NOT_INSTALLED ${LANG_HEBREW} "There is no installation of $(^NameDA)." + LangString MULTIUSER_INSTALLATION_FOR_CURRENT_USER_NOT_SUPPORTED ${LANG_HEBREW} "The operating system doesn't support current user installations." + LangString MULTIUSER_ADMIN_ACCOUNT_LOGIN_REQUIRED ${LANG_HEBREW} "You need to login with an account that is a member of the administrators group to continue." + LangString MULTIUSER_ELEVATION_NOT_SUPPORTED ${LANG_HEBREW} "The operating system doesn't support elevation." + LangString MULTIUSER_LOGON_SERVICE_NOT_RUNNING ${LANG_HEBREW} "Unable to elevate, Secondary Logon service not running." + LangString MULTIUSER_ELEVATION_ERROR ${LANG_HEBREW} "Unable to elevate, error {ERROR}." +!endif + +!ifdef LANG_HUNGARIAN + LangString MULTIUSER_PAGE_TITLE ${LANG_HUNGARIAN} "Choose Users" + LangString MULTIUSER_INSTALL_PAGE_SUBTITLE ${LANG_HUNGARIAN} "Choose for which users to install $(^NameDA)." + LangString MULTIUSER_UNINSTALL_PAGE_SUBTITLE ${LANG_HUNGARIAN} "Choose for which users to remove $(^NameDA)." + LangString MULTIUSER_INSTALL_HEADER ${LANG_HUNGARIAN} "Select whether to install $(^NameDA) for all users or for current user." + LangString MULTIUSER_UNINSTALL_HEADER ${LANG_HUNGARIAN} "$(^NameDA) is installed both for all users and for current user.$\r$\nSelect which installation to remove." + LangString MULTIUSER_ALL_USERS ${LANG_HUNGARIAN} "For anyone who uses this computer (all users)" + LangString MULTIUSER_CURRENT_USER ${LANG_HUNGARIAN} "For me ({USER})" + LangString MULTIUSER_NEW_INSTALLATION_ALL_USERS ${LANG_HUNGARIAN} "Fresh install for all users." + LangString MULTIUSER_NEW_INSTALLATION_CURRENT_USER ${LANG_HUNGARIAN} "Fresh install for current user." + LangString MULTIUSER_INSTALLED_ALL_USERS ${LANG_HUNGARIAN} "Version {VERSION} is installed for all users in $\"{FOLDER}$\"." + LangString MULTIUSER_INSTALLED_CURRENT_USER ${LANG_HUNGARIAN} "Version {VERSION} is installed for current user in $\"{FOLDER}$\"." + LangString MULTIUSER_REINSTALL_SAME_VERSION_ALL_USERS ${LANG_HUNGARIAN} "Reinstall version {VERSION} for all users." + LangString MULTIUSER_REINSTALL_SAME_VERSION_CURRENT_USER ${LANG_HUNGARIAN} "Reinstall version {VERSION} for current user." + LangString MULTIUSER_REINSTALL_DIFF_VERSION_ALL_USERS ${LANG_HUNGARIAN} "Uninstall version {OLD_VERSION} and install version {VERSION} for all users." + LangString MULTIUSER_REINSTALL_DIFF_VERSION_CURRENT_USER ${LANG_HUNGARIAN} "Uninstall version {OLD_VERSION} and install version {VERSION} for current user." + LangString MULTIUSER_RUN_AS_ADMIN ${LANG_HUNGARIAN} "You need to run this program as administrator." + LangString MULTIUSER_ADMIN_CREDENTIALS_REQUIRED ${LANG_HUNGARIAN} "Administrator credentials required." + LangString MULTIUSER_ADMIN_UNINSTALL_CREDENTIALS_REQUIRED ${LANG_HUNGARIAN} "Administrator credentials required for uninstall." + ; error messages - not so important + LangString MULTIUSER_INVALID_PARAMS ${LANG_HUNGARIAN} "Invalid combination of paramaters." + LangString MULTIUSER_NOT_INSTALLED ${LANG_HUNGARIAN} "There is no installation of $(^NameDA)." + LangString MULTIUSER_INSTALLATION_FOR_CURRENT_USER_NOT_SUPPORTED ${LANG_HUNGARIAN} "The operating system doesn't support current user installations." + LangString MULTIUSER_ADMIN_ACCOUNT_LOGIN_REQUIRED ${LANG_HUNGARIAN} "You need to login with an account that is a member of the administrators group to continue." + LangString MULTIUSER_ELEVATION_NOT_SUPPORTED ${LANG_HUNGARIAN} "The operating system doesn't support elevation." + LangString MULTIUSER_LOGON_SERVICE_NOT_RUNNING ${LANG_HUNGARIAN} "Unable to elevate, Secondary Logon service not running." + LangString MULTIUSER_ELEVATION_ERROR ${LANG_HUNGARIAN} "Unable to elevate, error {ERROR}." +!endif + +!ifdef LANG_ICELANDIC + LangString MULTIUSER_PAGE_TITLE ${LANG_ICELANDIC} "Choose Users" + LangString MULTIUSER_INSTALL_PAGE_SUBTITLE ${LANG_ICELANDIC} "Choose for which users to install $(^NameDA)." + LangString MULTIUSER_UNINSTALL_PAGE_SUBTITLE ${LANG_ICELANDIC} "Choose for which users to remove $(^NameDA)." + LangString MULTIUSER_INSTALL_HEADER ${LANG_ICELANDIC} "Select whether to install $(^NameDA) for all users or for current user." + LangString MULTIUSER_UNINSTALL_HEADER ${LANG_ICELANDIC} "$(^NameDA) is installed both for all users and for current user.$\r$\nSelect which installation to remove." + LangString MULTIUSER_ALL_USERS ${LANG_ICELANDIC} "For &anyone who uses this computer (all users)" + LangString MULTIUSER_CURRENT_USER ${LANG_ICELANDIC} "For &me ({USER})" + LangString MULTIUSER_ALL_USERS_UMUI ${LANG_ICELANDIC} "For anyone who uses this computer (all users)" + LangString MULTIUSER_CURRENT_USER_UMUI ${LANG_ICELANDIC} "For me ({USER})" + LangString MULTIUSER_NEW_INSTALLATION_ALL_USERS ${LANG_ICELANDIC} "Fresh install for all users." + LangString MULTIUSER_NEW_INSTALLATION_CURRENT_USER ${LANG_ICELANDIC} "Fresh install for current user." + LangString MULTIUSER_INSTALLED_ALL_USERS ${LANG_ICELANDIC} "Version {VERSION} is installed for all users in $\"{FOLDER}$\"." + LangString MULTIUSER_INSTALLED_CURRENT_USER ${LANG_ICELANDIC} "Version {VERSION} is installed for current user in $\"{FOLDER}$\"." + LangString MULTIUSER_REINSTALL_SAME_VERSION_ALL_USERS ${LANG_ICELANDIC} "Reinstall version {VERSION} for all users." + LangString MULTIUSER_REINSTALL_SAME_VERSION_CURRENT_USER ${LANG_ICELANDIC} "Reinstall version {VERSION} for current user." + LangString MULTIUSER_REINSTALL_DIFF_VERSION_ALL_USERS ${LANG_ICELANDIC} "Uninstall version {OLD_VERSION} and install version {VERSION} for all users." + LangString MULTIUSER_REINSTALL_DIFF_VERSION_CURRENT_USER ${LANG_ICELANDIC} "Uninstall version {OLD_VERSION} and install version {VERSION} for current user." + LangString MULTIUSER_RUN_AS_ADMIN ${LANG_ICELANDIC} "You need to run this program as administrator." + LangString MULTIUSER_ADMIN_CREDENTIALS_REQUIRED ${LANG_ICELANDIC} "Administrator credentials required." + LangString MULTIUSER_ADMIN_UNINSTALL_CREDENTIALS_REQUIRED ${LANG_ICELANDIC} "Administrator credentials required for uninstall." + ; error messages - not so important + LangString MULTIUSER_INVALID_PARAMS ${LANG_ICELANDIC} "Invalid combination of paramaters." + LangString MULTIUSER_NOT_INSTALLED ${LANG_ICELANDIC} "There is no installation of $(^NameDA)." + LangString MULTIUSER_INSTALLATION_FOR_CURRENT_USER_NOT_SUPPORTED ${LANG_ICELANDIC} "The operating system doesn't support current user installations." + LangString MULTIUSER_ADMIN_ACCOUNT_LOGIN_REQUIRED ${LANG_ICELANDIC} "You need to login with an account that is a member of the administrators group to continue." + LangString MULTIUSER_ELEVATION_NOT_SUPPORTED ${LANG_ICELANDIC} "The operating system doesn't support elevation." + LangString MULTIUSER_LOGON_SERVICE_NOT_RUNNING ${LANG_ICELANDIC} "Unable to elevate, Secondary Logon service not running." + LangString MULTIUSER_ELEVATION_ERROR ${LANG_ICELANDIC} "Unable to elevate, error {ERROR}." +!endif + +!ifdef LANG_INDONESIAN + LangString MULTIUSER_PAGE_TITLE ${LANG_INDONESIAN} "Choose Users" + LangString MULTIUSER_INSTALL_PAGE_SUBTITLE ${LANG_INDONESIAN} "Choose for which users to install $(^NameDA)." + LangString MULTIUSER_UNINSTALL_PAGE_SUBTITLE ${LANG_INDONESIAN} "Choose for which users to remove $(^NameDA)." + LangString MULTIUSER_INSTALL_HEADER ${LANG_INDONESIAN} "Select whether to install $(^NameDA) for all users or for current user." + LangString MULTIUSER_UNINSTALL_HEADER ${LANG_INDONESIAN} "$(^NameDA) is installed both for all users and for current user.$\r$\nSelect which installation to remove." + LangString MULTIUSER_ALL_USERS ${LANG_INDONESIAN} "For &anyone who uses this computer (all users)" + LangString MULTIUSER_CURRENT_USER ${LANG_INDONESIAN} "For &me ({USER})" + LangString MULTIUSER_ALL_USERS_UMUI ${LANG_INDONESIAN} "For anyone who uses this computer (all users)" + LangString MULTIUSER_CURRENT_USER_UMUI ${LANG_INDONESIAN} "For me ({USER})" + LangString MULTIUSER_NEW_INSTALLATION_ALL_USERS ${LANG_INDONESIAN} "Fresh install for all users." + LangString MULTIUSER_NEW_INSTALLATION_CURRENT_USER ${LANG_INDONESIAN} "Fresh install for current user." + LangString MULTIUSER_INSTALLED_ALL_USERS ${LANG_INDONESIAN} "Version {VERSION} is installed for all users in $\"{FOLDER}$\"." + LangString MULTIUSER_INSTALLED_CURRENT_USER ${LANG_INDONESIAN} "Version {VERSION} is installed for current user in $\"{FOLDER}$\"." + LangString MULTIUSER_REINSTALL_SAME_VERSION_ALL_USERS ${LANG_INDONESIAN} "Reinstall version {VERSION} for all users." + LangString MULTIUSER_REINSTALL_SAME_VERSION_CURRENT_USER ${LANG_INDONESIAN} "Reinstall version {VERSION} for current user." + LangString MULTIUSER_REINSTALL_DIFF_VERSION_ALL_USERS ${LANG_INDONESIAN} "Uninstall version {OLD_VERSION} and install version {VERSION} for all users." + LangString MULTIUSER_REINSTALL_DIFF_VERSION_CURRENT_USER ${LANG_INDONESIAN} "Uninstall version {OLD_VERSION} and install version {VERSION} for current user." + LangString MULTIUSER_RUN_AS_ADMIN ${LANG_INDONESIAN} "You need to run this program as administrator." + LangString MULTIUSER_ADMIN_CREDENTIALS_REQUIRED ${LANG_INDONESIAN} "Administrator credentials required." + LangString MULTIUSER_ADMIN_UNINSTALL_CREDENTIALS_REQUIRED ${LANG_INDONESIAN} "Administrator credentials required for uninstall." + ; error messages - not so important + LangString MULTIUSER_INVALID_PARAMS ${LANG_INDONESIAN} "Invalid combination of paramaters." + LangString MULTIUSER_NOT_INSTALLED ${LANG_INDONESIAN} "There is no installation of $(^NameDA)." + LangString MULTIUSER_INSTALLATION_FOR_CURRENT_USER_NOT_SUPPORTED ${LANG_INDONESIAN} "The operating system doesn't support current user installations." + LangString MULTIUSER_ADMIN_ACCOUNT_LOGIN_REQUIRED ${LANG_INDONESIAN} "You need to login with an account that is a member of the administrators group to continue." + LangString MULTIUSER_ELEVATION_NOT_SUPPORTED ${LANG_INDONESIAN} "The operating system doesn't support elevation." + LangString MULTIUSER_LOGON_SERVICE_NOT_RUNNING ${LANG_INDONESIAN} "Unable to elevate, Secondary Logon service not running." + LangString MULTIUSER_ELEVATION_ERROR ${LANG_INDONESIAN} "Unable to elevate, error {ERROR}." +!endif + +!ifdef LANG_IRISH + LangString MULTIUSER_PAGE_TITLE ${LANG_IRISH} "Choose Users" + LangString MULTIUSER_INSTALL_PAGE_SUBTITLE ${LANG_IRISH} "Choose for which users to install $(^NameDA)." + LangString MULTIUSER_UNINSTALL_PAGE_SUBTITLE ${LANG_IRISH} "Choose for which users to remove $(^NameDA)." + LangString MULTIUSER_INSTALL_HEADER ${LANG_IRISH} "Select whether to install $(^NameDA) for all users or for current user." + LangString MULTIUSER_UNINSTALL_HEADER ${LANG_IRISH} "$(^NameDA) is installed both for all users and for current user.$\r$\nSelect which installation to remove." + LangString MULTIUSER_ALL_USERS ${LANG_IRISH} "For &anyone who uses this computer (all users)" + LangString MULTIUSER_CURRENT_USER ${LANG_IRISH} "For &me ({USER})" + LangString MULTIUSER_ALL_USERS_UMUI ${LANG_IRISH} "For anyone who uses this computer (all users)" + LangString MULTIUSER_CURRENT_USER_UMUI ${LANG_IRISH} "For me ({USER})" + LangString MULTIUSER_NEW_INSTALLATION_ALL_USERS ${LANG_IRISH} "Fresh install for all users." + LangString MULTIUSER_NEW_INSTALLATION_CURRENT_USER ${LANG_IRISH} "Fresh install for current user." + LangString MULTIUSER_INSTALLED_ALL_USERS ${LANG_IRISH} "Version {VERSION} is installed for all users in $\"{FOLDER}$\"." + LangString MULTIUSER_INSTALLED_CURRENT_USER ${LANG_IRISH} "Version {VERSION} is installed for current user in $\"{FOLDER}$\"." + LangString MULTIUSER_REINSTALL_SAME_VERSION_ALL_USERS ${LANG_IRISH} "Reinstall version {VERSION} for all users." + LangString MULTIUSER_REINSTALL_SAME_VERSION_CURRENT_USER ${LANG_IRISH} "Reinstall version {VERSION} for current user." + LangString MULTIUSER_REINSTALL_DIFF_VERSION_ALL_USERS ${LANG_IRISH} "Uninstall version {OLD_VERSION} and install version {VERSION} for all users." + LangString MULTIUSER_REINSTALL_DIFF_VERSION_CURRENT_USER ${LANG_IRISH} "Uninstall version {OLD_VERSION} and install version {VERSION} for current user." + LangString MULTIUSER_RUN_AS_ADMIN ${LANG_IRISH} "You need to run this program as administrator." + LangString MULTIUSER_ADMIN_CREDENTIALS_REQUIRED ${LANG_IRISH} "Administrator credentials required." + LangString MULTIUSER_ADMIN_UNINSTALL_CREDENTIALS_REQUIRED ${LANG_IRISH} "Administrator credentials required for uninstall." + ; error messages - not so important + LangString MULTIUSER_INVALID_PARAMS ${LANG_IRISH} "Invalid combination of paramaters." + LangString MULTIUSER_NOT_INSTALLED ${LANG_IRISH} "There is no installation of $(^NameDA)." + LangString MULTIUSER_INSTALLATION_FOR_CURRENT_USER_NOT_SUPPORTED ${LANG_IRISH} "The operating system doesn't support current user installations." + LangString MULTIUSER_ADMIN_ACCOUNT_LOGIN_REQUIRED ${LANG_IRISH} "You need to login with an account that is a member of the administrators group to continue." + LangString MULTIUSER_ELEVATION_NOT_SUPPORTED ${LANG_IRISH} "The operating system doesn't support elevation." + LangString MULTIUSER_LOGON_SERVICE_NOT_RUNNING ${LANG_IRISH} "Unable to elevate, Secondary Logon service not running." + LangString MULTIUSER_ELEVATION_ERROR ${LANG_IRISH} "Unable to elevate, error {ERROR}." +!endif + +!ifdef LANG_ITALIAN + LangString MULTIUSER_PAGE_TITLE ${LANG_ITALIAN} "Choose Users" + LangString MULTIUSER_INSTALL_PAGE_SUBTITLE ${LANG_ITALIAN} "Choose for which users to install $(^NameDA)." + LangString MULTIUSER_UNINSTALL_PAGE_SUBTITLE ${LANG_ITALIAN} "Choose for which users to remove $(^NameDA)." + LangString MULTIUSER_INSTALL_HEADER ${LANG_ITALIAN} "Select whether to install $(^NameDA) for all users or for current user." + LangString MULTIUSER_UNINSTALL_HEADER ${LANG_ITALIAN} "$(^NameDA) is installed both for all users and for current user.$\r$\nSelect which installation to remove." + LangString MULTIUSER_ALL_USERS ${LANG_ITALIAN} "For anyone who uses this computer (all users)" + LangString MULTIUSER_CURRENT_USER ${LANG_ITALIAN} "For me ({USER})" + LangString MULTIUSER_NEW_INSTALLATION_ALL_USERS ${LANG_ITALIAN} "Fresh install for all users." + LangString MULTIUSER_NEW_INSTALLATION_CURRENT_USER ${LANG_ITALIAN} "Fresh install for current user." + LangString MULTIUSER_INSTALLED_ALL_USERS ${LANG_ITALIAN} "Version {VERSION} is installed for all users in $\"{FOLDER}$\"." + LangString MULTIUSER_INSTALLED_CURRENT_USER ${LANG_ITALIAN} "Version {VERSION} is installed for current user in $\"{FOLDER}$\"." + LangString MULTIUSER_REINSTALL_SAME_VERSION_ALL_USERS ${LANG_ITALIAN} "Reinstall version {VERSION} for all users." + LangString MULTIUSER_REINSTALL_SAME_VERSION_CURRENT_USER ${LANG_ITALIAN} "Reinstall version {VERSION} for current user." + LangString MULTIUSER_REINSTALL_DIFF_VERSION_ALL_USERS ${LANG_ITALIAN} "Uninstall version {OLD_VERSION} and install version {VERSION} for all users." + LangString MULTIUSER_REINSTALL_DIFF_VERSION_CURRENT_USER ${LANG_ITALIAN} "Uninstall version {OLD_VERSION} and install version {VERSION} for current user." + LangString MULTIUSER_RUN_AS_ADMIN ${LANG_ITALIAN} "You need to run this program as administrator." + LangString MULTIUSER_ADMIN_CREDENTIALS_REQUIRED ${LANG_ITALIAN} "Administrator credentials required." + LangString MULTIUSER_ADMIN_UNINSTALL_CREDENTIALS_REQUIRED ${LANG_ITALIAN} "Administrator credentials required for uninstall." + ; error messages - not so important + LangString MULTIUSER_INVALID_PARAMS ${LANG_ITALIAN} "Invalid combination of paramaters." + LangString MULTIUSER_NOT_INSTALLED ${LANG_ITALIAN} "There is no installation of $(^NameDA)." + LangString MULTIUSER_INSTALLATION_FOR_CURRENT_USER_NOT_SUPPORTED ${LANG_ITALIAN} "The operating system doesn't support current user installations." + LangString MULTIUSER_ADMIN_ACCOUNT_LOGIN_REQUIRED ${LANG_ITALIAN} "You need to login with an account that is a member of the administrators group to continue." + LangString MULTIUSER_ELEVATION_NOT_SUPPORTED ${LANG_ITALIAN} "The operating system doesn't support elevation." + LangString MULTIUSER_LOGON_SERVICE_NOT_RUNNING ${LANG_ITALIAN} "Unable to elevate, Secondary Logon service not running." + LangString MULTIUSER_ELEVATION_ERROR ${LANG_ITALIAN} "Unable to elevate, error {ERROR}." +!endif + +!ifdef LANG_JAPANESE + LangString MULTIUSER_PAGE_TITLE ${LANG_JAPANESE} "Choose Users" + LangString MULTIUSER_INSTALL_PAGE_SUBTITLE ${LANG_JAPANESE} "Choose for which users to install $(^NameDA)." + LangString MULTIUSER_UNINSTALL_PAGE_SUBTITLE ${LANG_JAPANESE} "Choose for which users to remove $(^NameDA)." + LangString MULTIUSER_INSTALL_HEADER ${LANG_JAPANESE} "Select whether to install $(^NameDA) for all users or for current user." + LangString MULTIUSER_UNINSTALL_HEADER ${LANG_JAPANESE} "$(^NameDA) is installed both for all users and for current user.$\r$\nSelect which installation to remove." + LangString MULTIUSER_ALL_USERS ${LANG_JAPANESE} "For &anyone who uses this computer (all users)" + LangString MULTIUSER_CURRENT_USER ${LANG_JAPANESE} "For &me ({USER})" + LangString MULTIUSER_ALL_USERS_UMUI ${LANG_JAPANESE} "For anyone who uses this computer (all users)" + LangString MULTIUSER_CURRENT_USER_UMUI ${LANG_JAPANESE} "For me ({USER})" + LangString MULTIUSER_NEW_INSTALLATION_ALL_USERS ${LANG_JAPANESE} "Fresh install for all users." + LangString MULTIUSER_NEW_INSTALLATION_CURRENT_USER ${LANG_JAPANESE} "Fresh install for current user." + LangString MULTIUSER_INSTALLED_ALL_USERS ${LANG_JAPANESE} "Version {VERSION} is installed for all users in $\"{FOLDER}$\"." + LangString MULTIUSER_INSTALLED_CURRENT_USER ${LANG_JAPANESE} "Version {VERSION} is installed for current user in $\"{FOLDER}$\"." + LangString MULTIUSER_REINSTALL_SAME_VERSION_ALL_USERS ${LANG_JAPANESE} "Reinstall version {VERSION} for all users." + LangString MULTIUSER_REINSTALL_SAME_VERSION_CURRENT_USER ${LANG_JAPANESE} "Reinstall version {VERSION} for current user." + LangString MULTIUSER_REINSTALL_DIFF_VERSION_ALL_USERS ${LANG_JAPANESE} "Uninstall version {OLD_VERSION} and install version {VERSION} for all users." + LangString MULTIUSER_REINSTALL_DIFF_VERSION_CURRENT_USER ${LANG_JAPANESE} "Uninstall version {OLD_VERSION} and install version {VERSION} for current user." + LangString MULTIUSER_RUN_AS_ADMIN ${LANG_JAPANESE} "You need to run this program as administrator." + LangString MULTIUSER_ADMIN_CREDENTIALS_REQUIRED ${LANG_JAPANESE} "Administrator credentials required." + LangString MULTIUSER_ADMIN_UNINSTALL_CREDENTIALS_REQUIRED ${LANG_JAPANESE} "Administrator credentials required for uninstall." + ; error messages - not so important + LangString MULTIUSER_INVALID_PARAMS ${LANG_JAPANESE} "Invalid combination of paramaters." + LangString MULTIUSER_NOT_INSTALLED ${LANG_JAPANESE} "There is no installation of $(^NameDA)." + LangString MULTIUSER_INSTALLATION_FOR_CURRENT_USER_NOT_SUPPORTED ${LANG_JAPANESE} "The operating system doesn't support current user installations." + LangString MULTIUSER_ADMIN_ACCOUNT_LOGIN_REQUIRED ${LANG_JAPANESE} "You need to login with an account that is a member of the administrators group to continue." + LangString MULTIUSER_ELEVATION_NOT_SUPPORTED ${LANG_JAPANESE} "The operating system doesn't support elevation." + LangString MULTIUSER_LOGON_SERVICE_NOT_RUNNING ${LANG_JAPANESE} "Unable to elevate, Secondary Logon service not running." + LangString MULTIUSER_ELEVATION_ERROR ${LANG_JAPANESE} "Unable to elevate, error {ERROR}." +!endif + +!ifdef LANG_KOREAN + LangString MULTIUSER_PAGE_TITLE ${LANG_KOREAN} "Choose Users" + LangString MULTIUSER_INSTALL_PAGE_SUBTITLE ${LANG_KOREAN} "Choose for which users to install $(^NameDA)." + LangString MULTIUSER_UNINSTALL_PAGE_SUBTITLE ${LANG_KOREAN} "Choose for which users to remove $(^NameDA)." + LangString MULTIUSER_INSTALL_HEADER ${LANG_KOREAN} "Select whether to install $(^NameDA) for all users or for current user." + LangString MULTIUSER_UNINSTALL_HEADER ${LANG_KOREAN} "$(^NameDA) is installed both for all users and for current user.$\r$\nSelect which installation to remove." + LangString MULTIUSER_ALL_USERS ${LANG_KOREAN} "For &anyone who uses this computer (all users)" + LangString MULTIUSER_CURRENT_USER ${LANG_KOREAN} "For &me ({USER})" + LangString MULTIUSER_ALL_USERS_UMUI ${LANG_KOREAN} "For anyone who uses this computer (all users)" + LangString MULTIUSER_CURRENT_USER_UMUI ${LANG_KOREAN} "For me ({USER})" + LangString MULTIUSER_NEW_INSTALLATION_ALL_USERS ${LANG_KOREAN} "Fresh install for all users." + LangString MULTIUSER_NEW_INSTALLATION_CURRENT_USER ${LANG_KOREAN} "Fresh install for current user." + LangString MULTIUSER_INSTALLED_ALL_USERS ${LANG_KOREAN} "Version {VERSION} is installed for all users in $\"{FOLDER}$\"." + LangString MULTIUSER_INSTALLED_CURRENT_USER ${LANG_KOREAN} "Version {VERSION} is installed for current user in $\"{FOLDER}$\"." + LangString MULTIUSER_REINSTALL_SAME_VERSION_ALL_USERS ${LANG_KOREAN} "Reinstall version {VERSION} for all users." + LangString MULTIUSER_REINSTALL_SAME_VERSION_CURRENT_USER ${LANG_KOREAN} "Reinstall version {VERSION} for current user." + LangString MULTIUSER_REINSTALL_DIFF_VERSION_ALL_USERS ${LANG_KOREAN} "Uninstall version {OLD_VERSION} and install version {VERSION} for all users." + LangString MULTIUSER_REINSTALL_DIFF_VERSION_CURRENT_USER ${LANG_KOREAN} "Uninstall version {OLD_VERSION} and install version {VERSION} for current user." + LangString MULTIUSER_RUN_AS_ADMIN ${LANG_KOREAN} "You need to run this program as administrator." + LangString MULTIUSER_ADMIN_CREDENTIALS_REQUIRED ${LANG_KOREAN} "Administrator credentials required." + LangString MULTIUSER_ADMIN_UNINSTALL_CREDENTIALS_REQUIRED ${LANG_KOREAN} "Administrator credentials required for uninstall." + ; error messages - not so important + LangString MULTIUSER_INVALID_PARAMS ${LANG_KOREAN} "Invalid combination of paramaters." + LangString MULTIUSER_NOT_INSTALLED ${LANG_KOREAN} "There is no installation of $(^NameDA)." + LangString MULTIUSER_INSTALLATION_FOR_CURRENT_USER_NOT_SUPPORTED ${LANG_KOREAN} "The operating system doesn't support current user installations." + LangString MULTIUSER_ADMIN_ACCOUNT_LOGIN_REQUIRED ${LANG_KOREAN} "You need to login with an account that is a member of the administrators group to continue." + LangString MULTIUSER_ELEVATION_NOT_SUPPORTED ${LANG_KOREAN} "The operating system doesn't support elevation." + LangString MULTIUSER_LOGON_SERVICE_NOT_RUNNING ${LANG_KOREAN} "Unable to elevate, Secondary Logon service not running." + LangString MULTIUSER_ELEVATION_ERROR ${LANG_KOREAN} "Unable to elevate, error {ERROR}." +!endif + +!ifdef LANG_KURDISH + LangString MULTIUSER_PAGE_TITLE ${LANG_KURDISH} "Choose Users" + LangString MULTIUSER_INSTALL_PAGE_SUBTITLE ${LANG_KURDISH} "Choose for which users to install $(^NameDA)." + LangString MULTIUSER_UNINSTALL_PAGE_SUBTITLE ${LANG_KURDISH} "Choose for which users to remove $(^NameDA)." + LangString MULTIUSER_INSTALL_HEADER ${LANG_KURDISH} "Select whether to install $(^NameDA) for all users or for current user." + LangString MULTIUSER_UNINSTALL_HEADER ${LANG_KURDISH} "$(^NameDA) is installed both for all users and for current user.$\r$\nSelect which installation to remove." + LangString MULTIUSER_ALL_USERS ${LANG_KURDISH} "For &anyone who uses this computer (all users)" + LangString MULTIUSER_CURRENT_USER ${LANG_KURDISH} "For &me ({USER})" + LangString MULTIUSER_ALL_USERS_UMUI ${LANG_KURDISH} "For anyone who uses this computer (all users)" + LangString MULTIUSER_CURRENT_USER_UMUI ${LANG_KURDISH} "For me ({USER})" + LangString MULTIUSER_NEW_INSTALLATION_ALL_USERS ${LANG_KURDISH} "Fresh install for all users." + LangString MULTIUSER_NEW_INSTALLATION_CURRENT_USER ${LANG_KURDISH} "Fresh install for current user." + LangString MULTIUSER_INSTALLED_ALL_USERS ${LANG_KURDISH} "Version {VERSION} is installed for all users in $\"{FOLDER}$\"." + LangString MULTIUSER_INSTALLED_CURRENT_USER ${LANG_KURDISH} "Version {VERSION} is installed for current user in $\"{FOLDER}$\"." + LangString MULTIUSER_REINSTALL_SAME_VERSION_ALL_USERS ${LANG_KURDISH} "Reinstall version {VERSION} for all users." + LangString MULTIUSER_REINSTALL_SAME_VERSION_CURRENT_USER ${LANG_KURDISH} "Reinstall version {VERSION} for current user." + LangString MULTIUSER_REINSTALL_DIFF_VERSION_ALL_USERS ${LANG_KURDISH} "Uninstall version {OLD_VERSION} and install version {VERSION} for all users." + LangString MULTIUSER_REINSTALL_DIFF_VERSION_CURRENT_USER ${LANG_KURDISH} "Uninstall version {OLD_VERSION} and install version {VERSION} for current user." + LangString MULTIUSER_RUN_AS_ADMIN ${LANG_KURDISH} "You need to run this program as administrator." + LangString MULTIUSER_ADMIN_CREDENTIALS_REQUIRED ${LANG_KURDISH} "Administrator credentials required." + LangString MULTIUSER_ADMIN_UNINSTALL_CREDENTIALS_REQUIRED ${LANG_KURDISH} "Administrator credentials required for uninstall." + ; error messages - not so important + LangString MULTIUSER_INVALID_PARAMS ${LANG_KURDISH} "Invalid combination of paramaters." + LangString MULTIUSER_NOT_INSTALLED ${LANG_KURDISH} "There is no installation of $(^NameDA)." + LangString MULTIUSER_INSTALLATION_FOR_CURRENT_USER_NOT_SUPPORTED ${LANG_KURDISH} "The operating system doesn't support current user installations." + LangString MULTIUSER_ADMIN_ACCOUNT_LOGIN_REQUIRED ${LANG_KURDISH} "You need to login with an account that is a member of the administrators group to continue." + LangString MULTIUSER_ELEVATION_NOT_SUPPORTED ${LANG_KURDISH} "The operating system doesn't support elevation." + LangString MULTIUSER_LOGON_SERVICE_NOT_RUNNING ${LANG_KURDISH} "Unable to elevate, Secondary Logon service not running." + LangString MULTIUSER_ELEVATION_ERROR ${LANG_KURDISH} "Unable to elevate, error {ERROR}." +!endif + +!ifdef LANG_LATVIAN + LangString MULTIUSER_PAGE_TITLE ${LANG_LATVIAN} "Choose Users" + LangString MULTIUSER_INSTALL_PAGE_SUBTITLE ${LANG_LATVIAN} "Choose for which users to install $(^NameDA)." + LangString MULTIUSER_UNINSTALL_PAGE_SUBTITLE ${LANG_LATVIAN} "Choose for which users to remove $(^NameDA)." + LangString MULTIUSER_INSTALL_HEADER ${LANG_LATVIAN} "Select whether to install $(^NameDA) for all users or for current user." + LangString MULTIUSER_UNINSTALL_HEADER ${LANG_LATVIAN} "$(^NameDA) is installed both for all users and for current user.$\r$\nSelect which installation to remove." + LangString MULTIUSER_ALL_USERS ${LANG_LATVIAN} "For &anyone who uses this computer (all users)" + LangString MULTIUSER_CURRENT_USER ${LANG_LATVIAN} "For &me ({USER})" + LangString MULTIUSER_ALL_USERS_UMUI ${LANG_LATVIAN} "For anyone who uses this computer (all users)" + LangString MULTIUSER_CURRENT_USER_UMUI ${LANG_LATVIAN} "For me ({USER})" + LangString MULTIUSER_NEW_INSTALLATION_ALL_USERS ${LANG_LATVIAN} "Fresh install for all users." + LangString MULTIUSER_NEW_INSTALLATION_CURRENT_USER ${LANG_LATVIAN} "Fresh install for current user." + LangString MULTIUSER_INSTALLED_ALL_USERS ${LANG_LATVIAN} "Version {VERSION} is installed for all users in $\"{FOLDER}$\"." + LangString MULTIUSER_INSTALLED_CURRENT_USER ${LANG_LATVIAN} "Version {VERSION} is installed for current user in $\"{FOLDER}$\"." + LangString MULTIUSER_REINSTALL_SAME_VERSION_ALL_USERS ${LANG_LATVIAN} "Reinstall version {VERSION} for all users." + LangString MULTIUSER_REINSTALL_SAME_VERSION_CURRENT_USER ${LANG_LATVIAN} "Reinstall version {VERSION} for current user." + LangString MULTIUSER_REINSTALL_DIFF_VERSION_ALL_USERS ${LANG_LATVIAN} "Uninstall version {OLD_VERSION} and install version {VERSION} for all users." + LangString MULTIUSER_REINSTALL_DIFF_VERSION_CURRENT_USER ${LANG_LATVIAN} "Uninstall version {OLD_VERSION} and install version {VERSION} for current user." + LangString MULTIUSER_RUN_AS_ADMIN ${LANG_LATVIAN} "You need to run this program as administrator." + LangString MULTIUSER_ADMIN_CREDENTIALS_REQUIRED ${LANG_LATVIAN} "Administrator credentials required." + LangString MULTIUSER_ADMIN_UNINSTALL_CREDENTIALS_REQUIRED ${LANG_LATVIAN} "Administrator credentials required for uninstall." + ; error messages - not so important + LangString MULTIUSER_INVALID_PARAMS ${LANG_LATVIAN} "Invalid combination of paramaters." + LangString MULTIUSER_NOT_INSTALLED ${LANG_LATVIAN} "There is no installation of $(^NameDA)." + LangString MULTIUSER_INSTALLATION_FOR_CURRENT_USER_NOT_SUPPORTED ${LANG_LATVIAN} "The operating system doesn't support current user installations." + LangString MULTIUSER_ADMIN_ACCOUNT_LOGIN_REQUIRED ${LANG_LATVIAN} "You need to login with an account that is a member of the administrators group to continue." + LangString MULTIUSER_ELEVATION_NOT_SUPPORTED ${LANG_LATVIAN} "The operating system doesn't support elevation." + LangString MULTIUSER_LOGON_SERVICE_NOT_RUNNING ${LANG_LATVIAN} "Unable to elevate, Secondary Logon service not running." + LangString MULTIUSER_ELEVATION_ERROR ${LANG_LATVIAN} "Unable to elevate, error {ERROR}." +!endif + +!ifdef LANG_LITHUANIAN + LangString MULTIUSER_PAGE_TITLE ${LANG_LITHUANIAN} "Choose Users" + LangString MULTIUSER_INSTALL_PAGE_SUBTITLE ${LANG_LITHUANIAN} "Choose for which users to install $(^NameDA)." + LangString MULTIUSER_UNINSTALL_PAGE_SUBTITLE ${LANG_LITHUANIAN} "Choose for which users to remove $(^NameDA)." + LangString MULTIUSER_INSTALL_HEADER ${LANG_LITHUANIAN} "Select whether to install $(^NameDA) for all users or for current user." + LangString MULTIUSER_UNINSTALL_HEADER ${LANG_LITHUANIAN} "$(^NameDA) is installed both for all users and for current user.$\r$\nSelect which installation to remove." + LangString MULTIUSER_ALL_USERS ${LANG_LITHUANIAN} "For &anyone who uses this computer (all users)" + LangString MULTIUSER_CURRENT_USER ${LANG_LITHUANIAN} "For &me ({USER})" + LangString MULTIUSER_ALL_USERS_UMUI ${LANG_LITHUANIAN} "For anyone who uses this computer (all users)" + LangString MULTIUSER_CURRENT_USER_UMUI ${LANG_LITHUANIAN} "For me ({USER})" + LangString MULTIUSER_NEW_INSTALLATION_ALL_USERS ${LANG_LITHUANIAN} "Fresh install for all users." + LangString MULTIUSER_NEW_INSTALLATION_CURRENT_USER ${LANG_LITHUANIAN} "Fresh install for current user." + LangString MULTIUSER_INSTALLED_ALL_USERS ${LANG_LITHUANIAN} "Version {VERSION} is installed for all users in $\"{FOLDER}$\"." + LangString MULTIUSER_INSTALLED_CURRENT_USER ${LANG_LITHUANIAN} "Version {VERSION} is installed for current user in $\"{FOLDER}$\"." + LangString MULTIUSER_REINSTALL_SAME_VERSION_ALL_USERS ${LANG_LITHUANIAN} "Reinstall version {VERSION} for all users." + LangString MULTIUSER_REINSTALL_SAME_VERSION_CURRENT_USER ${LANG_LITHUANIAN} "Reinstall version {VERSION} for current user." + LangString MULTIUSER_REINSTALL_DIFF_VERSION_ALL_USERS ${LANG_LITHUANIAN} "Uninstall version {OLD_VERSION} and install version {VERSION} for all users." + LangString MULTIUSER_REINSTALL_DIFF_VERSION_CURRENT_USER ${LANG_LITHUANIAN} "Uninstall version {OLD_VERSION} and install version {VERSION} for current user." + LangString MULTIUSER_RUN_AS_ADMIN ${LANG_LITHUANIAN} "You need to run this program as administrator." + LangString MULTIUSER_ADMIN_CREDENTIALS_REQUIRED ${LANG_LITHUANIAN} "Administrator credentials required." + LangString MULTIUSER_ADMIN_UNINSTALL_CREDENTIALS_REQUIRED ${LANG_LITHUANIAN} "Administrator credentials required for uninstall." + ; error messages - not so important + LangString MULTIUSER_INVALID_PARAMS ${LANG_LITHUANIAN} "Invalid combination of paramaters." + LangString MULTIUSER_NOT_INSTALLED ${LANG_LITHUANIAN} "There is no installation of $(^NameDA)." + LangString MULTIUSER_INSTALLATION_FOR_CURRENT_USER_NOT_SUPPORTED ${LANG_LITHUANIAN} "The operating system doesn't support current user installations." + LangString MULTIUSER_ADMIN_ACCOUNT_LOGIN_REQUIRED ${LANG_LITHUANIAN} "You need to login with an account that is a member of the administrators group to continue." + LangString MULTIUSER_ELEVATION_NOT_SUPPORTED ${LANG_LITHUANIAN} "The operating system doesn't support elevation." + LangString MULTIUSER_LOGON_SERVICE_NOT_RUNNING ${LANG_LITHUANIAN} "Unable to elevate, Secondary Logon service not running." + LangString MULTIUSER_ELEVATION_ERROR ${LANG_LITHUANIAN} "Unable to elevate, error {ERROR}." +!endif + +!ifdef LANG_LUXEMBOURGISH + LangString MULTIUSER_PAGE_TITLE ${LANG_LUXEMBOURGISH} "Choose Users" + LangString MULTIUSER_INSTALL_PAGE_SUBTITLE ${LANG_LUXEMBOURGISH} "Choose for which users to install $(^NameDA)." + LangString MULTIUSER_UNINSTALL_PAGE_SUBTITLE ${LANG_LUXEMBOURGISH} "Choose for which users to remove $(^NameDA)." + LangString MULTIUSER_INSTALL_HEADER ${LANG_LUXEMBOURGISH} "Select whether to install $(^NameDA) for all users or for current user." + LangString MULTIUSER_UNINSTALL_HEADER ${LANG_LUXEMBOURGISH} "$(^NameDA) is installed both for all users and for current user.$\r$\nSelect which installation to remove." + LangString MULTIUSER_ALL_USERS ${LANG_LUXEMBOURGISH} "For &anyone who uses this computer (all users)" + LangString MULTIUSER_CURRENT_USER ${LANG_LUXEMBOURGISH} "For &me ({USER})" + LangString MULTIUSER_ALL_USERS_UMUI ${LANG_LUXEMBOURGISH} "For anyone who uses this computer (all users)" + LangString MULTIUSER_CURRENT_USER_UMUI ${LANG_LUXEMBOURGISH} "For me ({USER})" + LangString MULTIUSER_NEW_INSTALLATION_ALL_USERS ${LANG_LUXEMBOURGISH} "Fresh install for all users." + LangString MULTIUSER_NEW_INSTALLATION_CURRENT_USER ${LANG_LUXEMBOURGISH} "Fresh install for current user." + LangString MULTIUSER_INSTALLED_ALL_USERS ${LANG_LUXEMBOURGISH} "Version {VERSION} is installed for all users in $\"{FOLDER}$\"." + LangString MULTIUSER_INSTALLED_CURRENT_USER ${LANG_LUXEMBOURGISH} "Version {VERSION} is installed for current user in $\"{FOLDER}$\"." + LangString MULTIUSER_REINSTALL_SAME_VERSION_ALL_USERS ${LANG_LUXEMBOURGISH} "Reinstall version {VERSION} for all users." + LangString MULTIUSER_REINSTALL_SAME_VERSION_CURRENT_USER ${LANG_LUXEMBOURGISH} "Reinstall version {VERSION} for current user." + LangString MULTIUSER_REINSTALL_DIFF_VERSION_ALL_USERS ${LANG_LUXEMBOURGISH} "Uninstall version {OLD_VERSION} and install version {VERSION} for all users." + LangString MULTIUSER_REINSTALL_DIFF_VERSION_CURRENT_USER ${LANG_LUXEMBOURGISH} "Uninstall version {OLD_VERSION} and install version {VERSION} for current user." + LangString MULTIUSER_RUN_AS_ADMIN ${LANG_LUXEMBOURGISH} "You need to run this program as administrator." + LangString MULTIUSER_ADMIN_CREDENTIALS_REQUIRED ${LANG_LUXEMBOURGISH} "Administrator credentials required." + LangString MULTIUSER_ADMIN_UNINSTALL_CREDENTIALS_REQUIRED ${LANG_LUXEMBOURGISH} "Administrator credentials required for uninstall." + ; error messages - not so important + LangString MULTIUSER_INVALID_PARAMS ${LANG_LUXEMBOURGISH} "Invalid combination of paramaters." + LangString MULTIUSER_NOT_INSTALLED ${LANG_LUXEMBOURGISH} "There is no installation of $(^NameDA)." + LangString MULTIUSER_INSTALLATION_FOR_CURRENT_USER_NOT_SUPPORTED ${LANG_LUXEMBOURGISH} "The operating system doesn't support current user installations." + LangString MULTIUSER_ADMIN_ACCOUNT_LOGIN_REQUIRED ${LANG_LUXEMBOURGISH} "You need to login with an account that is a member of the administrators group to continue." + LangString MULTIUSER_ELEVATION_NOT_SUPPORTED ${LANG_LUXEMBOURGISH} "The operating system doesn't support elevation." + LangString MULTIUSER_LOGON_SERVICE_NOT_RUNNING ${LANG_LUXEMBOURGISH} "Unable to elevate, Secondary Logon service not running." + LangString MULTIUSER_ELEVATION_ERROR ${LANG_LUXEMBOURGISH} "Unable to elevate, error {ERROR}." +!endif + +!ifdef LANG_MACEDONIAN + LangString MULTIUSER_PAGE_TITLE ${LANG_MACEDONIAN} "Choose Users" + LangString MULTIUSER_INSTALL_PAGE_SUBTITLE ${LANG_MACEDONIAN} "Choose for which users to install $(^NameDA)." + LangString MULTIUSER_UNINSTALL_PAGE_SUBTITLE ${LANG_MACEDONIAN} "Choose for which users to remove $(^NameDA)." + LangString MULTIUSER_INSTALL_HEADER ${LANG_MACEDONIAN} "Select whether to install $(^NameDA) for all users or for current user." + LangString MULTIUSER_UNINSTALL_HEADER ${LANG_MACEDONIAN} "$(^NameDA) is installed both for all users and for current user.$\r$\nSelect which installation to remove." + LangString MULTIUSER_ALL_USERS ${LANG_MACEDONIAN} "For &anyone who uses this computer (all users)" + LangString MULTIUSER_CURRENT_USER ${LANG_MACEDONIAN} "For &me ({USER})" + LangString MULTIUSER_ALL_USERS_UMUI ${LANG_MACEDONIAN} "For anyone who uses this computer (all users)" + LangString MULTIUSER_CURRENT_USER_UMUI ${LANG_MACEDONIAN} "For me ({USER})" + LangString MULTIUSER_NEW_INSTALLATION_ALL_USERS ${LANG_MACEDONIAN} "Fresh install for all users." + LangString MULTIUSER_NEW_INSTALLATION_CURRENT_USER ${LANG_MACEDONIAN} "Fresh install for current user." + LangString MULTIUSER_INSTALLED_ALL_USERS ${LANG_MACEDONIAN} "Version {VERSION} is installed for all users in $\"{FOLDER}$\"." + LangString MULTIUSER_INSTALLED_CURRENT_USER ${LANG_MACEDONIAN} "Version {VERSION} is installed for current user in $\"{FOLDER}$\"." + LangString MULTIUSER_REINSTALL_SAME_VERSION_ALL_USERS ${LANG_MACEDONIAN} "Reinstall version {VERSION} for all users." + LangString MULTIUSER_REINSTALL_SAME_VERSION_CURRENT_USER ${LANG_MACEDONIAN} "Reinstall version {VERSION} for current user." + LangString MULTIUSER_REINSTALL_DIFF_VERSION_ALL_USERS ${LANG_MACEDONIAN} "Uninstall version {OLD_VERSION} and install version {VERSION} for all users." + LangString MULTIUSER_REINSTALL_DIFF_VERSION_CURRENT_USER ${LANG_MACEDONIAN} "Uninstall version {OLD_VERSION} and install version {VERSION} for current user." + LangString MULTIUSER_RUN_AS_ADMIN ${LANG_MACEDONIAN} "You need to run this program as administrator." + LangString MULTIUSER_ADMIN_CREDENTIALS_REQUIRED ${LANG_MACEDONIAN} "Administrator credentials required." + LangString MULTIUSER_ADMIN_UNINSTALL_CREDENTIALS_REQUIRED ${LANG_MACEDONIAN} "Administrator credentials required for uninstall." + ; error messages - not so important + LangString MULTIUSER_INVALID_PARAMS ${LANG_MACEDONIAN} "Invalid combination of paramaters." + LangString MULTIUSER_NOT_INSTALLED ${LANG_MACEDONIAN} "There is no installation of $(^NameDA)." + LangString MULTIUSER_INSTALLATION_FOR_CURRENT_USER_NOT_SUPPORTED ${LANG_MACEDONIAN} "The operating system doesn't support current user installations." + LangString MULTIUSER_ADMIN_ACCOUNT_LOGIN_REQUIRED ${LANG_MACEDONIAN} "You need to login with an account that is a member of the administrators group to continue." + LangString MULTIUSER_ELEVATION_NOT_SUPPORTED ${LANG_MACEDONIAN} "The operating system doesn't support elevation." + LangString MULTIUSER_LOGON_SERVICE_NOT_RUNNING ${LANG_MACEDONIAN} "Unable to elevate, Secondary Logon service not running." + LangString MULTIUSER_ELEVATION_ERROR ${LANG_MACEDONIAN} "Unable to elevate, error {ERROR}." +!endif + +!ifdef LANG_MALAY + LangString MULTIUSER_PAGE_TITLE ${LANG_MALAY} "Choose Users" + LangString MULTIUSER_INSTALL_PAGE_SUBTITLE ${LANG_MALAY} "Choose for which users to install $(^NameDA)." + LangString MULTIUSER_UNINSTALL_PAGE_SUBTITLE ${LANG_MALAY} "Choose for which users to remove $(^NameDA)." + LangString MULTIUSER_INSTALL_HEADER ${LANG_MALAY} "Select whether to install $(^NameDA) for all users or for current user." + LangString MULTIUSER_UNINSTALL_HEADER ${LANG_MALAY} "$(^NameDA) is installed both for all users and for current user.$\r$\nSelect which installation to remove." + LangString MULTIUSER_ALL_USERS ${LANG_MALAY} "For &anyone who uses this computer (all users)" + LangString MULTIUSER_CURRENT_USER ${LANG_MALAY} "For &me ({USER})" + LangString MULTIUSER_ALL_USERS_UMUI ${LANG_MALAY} "For anyone who uses this computer (all users)" + LangString MULTIUSER_CURRENT_USER_UMUI ${LANG_MALAY} "For me ({USER})" + LangString MULTIUSER_NEW_INSTALLATION_ALL_USERS ${LANG_MALAY} "Fresh install for all users." + LangString MULTIUSER_NEW_INSTALLATION_CURRENT_USER ${LANG_MALAY} "Fresh install for current user." + LangString MULTIUSER_INSTALLED_ALL_USERS ${LANG_MALAY} "Version {VERSION} is installed for all users in $\"{FOLDER}$\"." + LangString MULTIUSER_INSTALLED_CURRENT_USER ${LANG_MALAY} "Version {VERSION} is installed for current user in $\"{FOLDER}$\"." + LangString MULTIUSER_REINSTALL_SAME_VERSION_ALL_USERS ${LANG_MALAY} "Reinstall version {VERSION} for all users." + LangString MULTIUSER_REINSTALL_SAME_VERSION_CURRENT_USER ${LANG_MALAY} "Reinstall version {VERSION} for current user." + LangString MULTIUSER_REINSTALL_DIFF_VERSION_ALL_USERS ${LANG_MALAY} "Uninstall version {OLD_VERSION} and install version {VERSION} for all users." + LangString MULTIUSER_REINSTALL_DIFF_VERSION_CURRENT_USER ${LANG_MALAY} "Uninstall version {OLD_VERSION} and install version {VERSION} for current user." + LangString MULTIUSER_RUN_AS_ADMIN ${LANG_MALAY} "You need to run this program as administrator." + LangString MULTIUSER_ADMIN_CREDENTIALS_REQUIRED ${LANG_MALAY} "Administrator credentials required." + LangString MULTIUSER_ADMIN_UNINSTALL_CREDENTIALS_REQUIRED ${LANG_MALAY} "Administrator credentials required for uninstall." + ; error messages - not so important + LangString MULTIUSER_INVALID_PARAMS ${LANG_MALAY} "Invalid combination of paramaters." + LangString MULTIUSER_NOT_INSTALLED ${LANG_MALAY} "There is no installation of $(^NameDA)." + LangString MULTIUSER_INSTALLATION_FOR_CURRENT_USER_NOT_SUPPORTED ${LANG_MALAY} "The operating system doesn't support current user installations." + LangString MULTIUSER_ADMIN_ACCOUNT_LOGIN_REQUIRED ${LANG_MALAY} "You need to login with an account that is a member of the administrators group to continue." + LangString MULTIUSER_ELEVATION_NOT_SUPPORTED ${LANG_MALAY} "The operating system doesn't support elevation." + LangString MULTIUSER_LOGON_SERVICE_NOT_RUNNING ${LANG_MALAY} "Unable to elevate, Secondary Logon service not running." + LangString MULTIUSER_ELEVATION_ERROR ${LANG_MALAY} "Unable to elevate, error {ERROR}." +!endif + +!ifdef LANG_MONGOLIAN + LangString MULTIUSER_PAGE_TITLE ${LANG_MONGOLIAN} "Choose Users" + LangString MULTIUSER_INSTALL_PAGE_SUBTITLE ${LANG_MONGOLIAN} "Choose for which users to install $(^NameDA)." + LangString MULTIUSER_UNINSTALL_PAGE_SUBTITLE ${LANG_MONGOLIAN} "Choose for which users to remove $(^NameDA)." + LangString MULTIUSER_INSTALL_HEADER ${LANG_MONGOLIAN} "Select whether to install $(^NameDA) for all users or for current user." + LangString MULTIUSER_UNINSTALL_HEADER ${LANG_MONGOLIAN} "$(^NameDA) is installed both for all users and for current user.$\r$\nSelect which installation to remove." + LangString MULTIUSER_ALL_USERS ${LANG_MONGOLIAN} "For &anyone who uses this computer (all users)" + LangString MULTIUSER_CURRENT_USER ${LANG_MONGOLIAN} "For &me ({USER})" + LangString MULTIUSER_ALL_USERS_UMUI ${LANG_MONGOLIAN} "For anyone who uses this computer (all users)" + LangString MULTIUSER_CURRENT_USER_UMUI ${LANG_MONGOLIAN} "For me ({USER})" + LangString MULTIUSER_NEW_INSTALLATION_ALL_USERS ${LANG_MONGOLIAN} "Fresh install for all users." + LangString MULTIUSER_NEW_INSTALLATION_CURRENT_USER ${LANG_MONGOLIAN} "Fresh install for current user." + LangString MULTIUSER_INSTALLED_ALL_USERS ${LANG_MONGOLIAN} "Version {VERSION} is installed for all users in $\"{FOLDER}$\"." + LangString MULTIUSER_INSTALLED_CURRENT_USER ${LANG_MONGOLIAN} "Version {VERSION} is installed for current user in $\"{FOLDER}$\"." + LangString MULTIUSER_REINSTALL_SAME_VERSION_ALL_USERS ${LANG_MONGOLIAN} "Reinstall version {VERSION} for all users." + LangString MULTIUSER_REINSTALL_SAME_VERSION_CURRENT_USER ${LANG_MONGOLIAN} "Reinstall version {VERSION} for current user." + LangString MULTIUSER_REINSTALL_DIFF_VERSION_ALL_USERS ${LANG_MONGOLIAN} "Uninstall version {OLD_VERSION} and install version {VERSION} for all users." + LangString MULTIUSER_REINSTALL_DIFF_VERSION_CURRENT_USER ${LANG_MONGOLIAN} "Uninstall version {OLD_VERSION} and install version {VERSION} for current user." + LangString MULTIUSER_RUN_AS_ADMIN ${LANG_MONGOLIAN} "You need to run this program as administrator." + LangString MULTIUSER_ADMIN_CREDENTIALS_REQUIRED ${LANG_MONGOLIAN} "Administrator credentials required." + LangString MULTIUSER_ADMIN_UNINSTALL_CREDENTIALS_REQUIRED ${LANG_MONGOLIAN} "Administrator credentials required for uninstall." + ; error messages - not so important + LangString MULTIUSER_INVALID_PARAMS ${LANG_MONGOLIAN} "Invalid combination of paramaters." + LangString MULTIUSER_NOT_INSTALLED ${LANG_MONGOLIAN} "There is no installation of $(^NameDA)." + LangString MULTIUSER_INSTALLATION_FOR_CURRENT_USER_NOT_SUPPORTED ${LANG_MONGOLIAN} "The operating system doesn't support current user installations." + LangString MULTIUSER_ADMIN_ACCOUNT_LOGIN_REQUIRED ${LANG_MONGOLIAN} "You need to login with an account that is a member of the administrators group to continue." + LangString MULTIUSER_ELEVATION_NOT_SUPPORTED ${LANG_MONGOLIAN} "The operating system doesn't support elevation." + LangString MULTIUSER_LOGON_SERVICE_NOT_RUNNING ${LANG_MONGOLIAN} "Unable to elevate, Secondary Logon service not running." + LangString MULTIUSER_ELEVATION_ERROR ${LANG_MONGOLIAN} "Unable to elevate, error {ERROR}." +!endif + +!ifdef LANG_NORWEGIAN + LangString MULTIUSER_PAGE_TITLE ${LANG_NORWEGIAN} "Choose Users" + LangString MULTIUSER_INSTALL_PAGE_SUBTITLE ${LANG_NORWEGIAN} "Choose for which users to install $(^NameDA)." + LangString MULTIUSER_UNINSTALL_PAGE_SUBTITLE ${LANG_NORWEGIAN} "Choose for which users to remove $(^NameDA)." + LangString MULTIUSER_INSTALL_HEADER ${LANG_NORWEGIAN} "Select whether to install $(^NameDA) for all users or for current user." + LangString MULTIUSER_UNINSTALL_HEADER ${LANG_NORWEGIAN} "$(^NameDA) is installed both for all users and for current user.$\r$\nSelect which installation to remove." + LangString MULTIUSER_ALL_USERS ${LANG_NORWEGIAN} "For &anyone who uses this computer (all users)" + LangString MULTIUSER_CURRENT_USER ${LANG_NORWEGIAN} "For &me ({USER})" + LangString MULTIUSER_ALL_USERS_UMUI ${LANG_NORWEGIAN} "For anyone who uses this computer (all users)" + LangString MULTIUSER_CURRENT_USER_UMUI ${LANG_NORWEGIAN} "For me ({USER})" + LangString MULTIUSER_NEW_INSTALLATION_ALL_USERS ${LANG_NORWEGIAN} "Fresh install for all users." + LangString MULTIUSER_NEW_INSTALLATION_CURRENT_USER ${LANG_NORWEGIAN} "Fresh install for current user." + LangString MULTIUSER_INSTALLED_ALL_USERS ${LANG_NORWEGIAN} "Version {VERSION} is installed for all users in $\"{FOLDER}$\"." + LangString MULTIUSER_INSTALLED_CURRENT_USER ${LANG_NORWEGIAN} "Version {VERSION} is installed for current user in $\"{FOLDER}$\"." + LangString MULTIUSER_REINSTALL_SAME_VERSION_ALL_USERS ${LANG_NORWEGIAN} "Reinstall version {VERSION} for all users." + LangString MULTIUSER_REINSTALL_SAME_VERSION_CURRENT_USER ${LANG_NORWEGIAN} "Reinstall version {VERSION} for current user." + LangString MULTIUSER_REINSTALL_DIFF_VERSION_ALL_USERS ${LANG_NORWEGIAN} "Uninstall version {OLD_VERSION} and install version {VERSION} for all users." + LangString MULTIUSER_REINSTALL_DIFF_VERSION_CURRENT_USER ${LANG_NORWEGIAN} "Uninstall version {OLD_VERSION} and install version {VERSION} for current user." + LangString MULTIUSER_RUN_AS_ADMIN ${LANG_NORWEGIAN} "You need to run this program as administrator." + LangString MULTIUSER_ADMIN_CREDENTIALS_REQUIRED ${LANG_NORWEGIAN} "Administrator credentials required." + LangString MULTIUSER_ADMIN_UNINSTALL_CREDENTIALS_REQUIRED ${LANG_NORWEGIAN} "Administrator credentials required for uninstall." + ; error messages - not so important + LangString MULTIUSER_INVALID_PARAMS ${LANG_NORWEGIAN} "Invalid combination of paramaters." + LangString MULTIUSER_NOT_INSTALLED ${LANG_NORWEGIAN} "There is no installation of $(^NameDA)." + LangString MULTIUSER_INSTALLATION_FOR_CURRENT_USER_NOT_SUPPORTED ${LANG_NORWEGIAN} "The operating system doesn't support current user installations." + LangString MULTIUSER_ADMIN_ACCOUNT_LOGIN_REQUIRED ${LANG_NORWEGIAN} "You need to login with an account that is a member of the administrators group to continue." + LangString MULTIUSER_ELEVATION_NOT_SUPPORTED ${LANG_NORWEGIAN} "The operating system doesn't support elevation." + LangString MULTIUSER_LOGON_SERVICE_NOT_RUNNING ${LANG_NORWEGIAN} "Unable to elevate, Secondary Logon service not running." + LangString MULTIUSER_ELEVATION_ERROR ${LANG_NORWEGIAN} "Unable to elevate, error {ERROR}." +!endif + +!ifdef LANG_NORWEGIANNYNORSK + LangString MULTIUSER_PAGE_TITLE ${LANG_NORWEGIANNYNORSK} "Choose Users" + LangString MULTIUSER_INSTALL_PAGE_SUBTITLE ${LANG_NORWEGIANNYNORSK} "Choose for which users to install $(^NameDA)." + LangString MULTIUSER_UNINSTALL_PAGE_SUBTITLE ${LANG_NORWEGIANNYNORSK} "Choose for which users to remove $(^NameDA)." + LangString MULTIUSER_INSTALL_HEADER ${LANG_NORWEGIANNYNORSK} "Select whether to install $(^NameDA) for all users or for current user." + LangString MULTIUSER_UNINSTALL_HEADER ${LANG_NORWEGIANNYNORSK} "$(^NameDA) is installed both for all users and for current user.$\r$\nSelect which installation to remove." + LangString MULTIUSER_ALL_USERS ${LANG_NORWEGIANNYNORSK} "For &anyone who uses this computer (all users)" + LangString MULTIUSER_CURRENT_USER ${LANG_NORWEGIANNYNORSK} "For &me ({USER})" + LangString MULTIUSER_ALL_USERS_UMUI ${LANG_NORWEGIANNYNORSK} "For anyone who uses this computer (all users)" + LangString MULTIUSER_CURRENT_USER_UMUI ${LANG_NORWEGIANNYNORSK} "For me ({USER})" + LangString MULTIUSER_NEW_INSTALLATION_ALL_USERS ${LANG_NORWEGIANNYNORSK} "Fresh install for all users." + LangString MULTIUSER_NEW_INSTALLATION_CURRENT_USER ${LANG_NORWEGIANNYNORSK} "Fresh install for current user." + LangString MULTIUSER_INSTALLED_ALL_USERS ${LANG_NORWEGIANNYNORSK} "Version {VERSION} is installed for all users in $\"{FOLDER}$\"." + LangString MULTIUSER_INSTALLED_CURRENT_USER ${LANG_NORWEGIANNYNORSK} "Version {VERSION} is installed for current user in $\"{FOLDER}$\"." + LangString MULTIUSER_REINSTALL_SAME_VERSION_ALL_USERS ${LANG_NORWEGIANNYNORSK} "Reinstall version {VERSION} for all users." + LangString MULTIUSER_REINSTALL_SAME_VERSION_CURRENT_USER ${LANG_NORWEGIANNYNORSK} "Reinstall version {VERSION} for current user." + LangString MULTIUSER_REINSTALL_DIFF_VERSION_ALL_USERS ${LANG_NORWEGIANNYNORSK} "Uninstall version {OLD_VERSION} and install version {VERSION} for all users." + LangString MULTIUSER_REINSTALL_DIFF_VERSION_CURRENT_USER ${LANG_NORWEGIANNYNORSK} "Uninstall version {OLD_VERSION} and install version {VERSION} for current user." + LangString MULTIUSER_RUN_AS_ADMIN ${LANG_NORWEGIANNYNORSK} "You need to run this program as administrator." + LangString MULTIUSER_ADMIN_CREDENTIALS_REQUIRED ${LANG_NORWEGIANNYNORSK} "Administrator credentials required." + LangString MULTIUSER_ADMIN_UNINSTALL_CREDENTIALS_REQUIRED ${LANG_NORWEGIANNYNORSK} "Administrator credentials required for uninstall." + ; error messages - not so important + LangString MULTIUSER_INVALID_PARAMS ${LANG_NORWEGIANNYNORSK} "Invalid combination of paramaters." + LangString MULTIUSER_NOT_INSTALLED ${LANG_NORWEGIANNYNORSK} "There is no installation of $(^NameDA)." + LangString MULTIUSER_INSTALLATION_FOR_CURRENT_USER_NOT_SUPPORTED ${LANG_NORWEGIANNYNORSK} "The operating system doesn't support current user installations." + LangString MULTIUSER_ADMIN_ACCOUNT_LOGIN_REQUIRED ${LANG_NORWEGIANNYNORSK} "You need to login with an account that is a member of the administrators group to continue." + LangString MULTIUSER_ELEVATION_NOT_SUPPORTED ${LANG_NORWEGIANNYNORSK} "The operating system doesn't support elevation." + LangString MULTIUSER_LOGON_SERVICE_NOT_RUNNING ${LANG_NORWEGIANNYNORSK} "Unable to elevate, Secondary Logon service not running." + LangString MULTIUSER_ELEVATION_ERROR ${LANG_NORWEGIANNYNORSK} "Unable to elevate, error {ERROR}." +!endif + +!ifdef LANG_PASHTO + LangString MULTIUSER_PAGE_TITLE ${LANG_PASHTO} "Choose Users" + LangString MULTIUSER_INSTALL_PAGE_SUBTITLE ${LANG_PASHTO} "Choose for which users to install $(^NameDA)." + LangString MULTIUSER_UNINSTALL_PAGE_SUBTITLE ${LANG_PASHTO} "Choose for which users to remove $(^NameDA)." + LangString MULTIUSER_INSTALL_HEADER ${LANG_PASHTO} "Select whether to install $(^NameDA) for all users or for current user." + LangString MULTIUSER_UNINSTALL_HEADER ${LANG_PASHTO} "$(^NameDA) is installed both for all users and for current user.$\r$\nSelect which installation to remove." + LangString MULTIUSER_ALL_USERS ${LANG_PASHTO} "For &anyone who uses this computer (all users)" + LangString MULTIUSER_CURRENT_USER ${LANG_PASHTO} "For &me ({USER})" + LangString MULTIUSER_ALL_USERS_UMUI ${LANG_PASHTO} "For anyone who uses this computer (all users)" + LangString MULTIUSER_CURRENT_USER_UMUI ${LANG_PASHTO} "For me ({USER})" + LangString MULTIUSER_NEW_INSTALLATION_ALL_USERS ${LANG_PASHTO} "Fresh install for all users." + LangString MULTIUSER_NEW_INSTALLATION_CURRENT_USER ${LANG_PASHTO} "Fresh install for current user." + LangString MULTIUSER_INSTALLED_ALL_USERS ${LANG_PASHTO} "Version {VERSION} is installed for all users in $\"{FOLDER}$\"." + LangString MULTIUSER_INSTALLED_CURRENT_USER ${LANG_PASHTO} "Version {VERSION} is installed for current user in $\"{FOLDER}$\"." + LangString MULTIUSER_REINSTALL_SAME_VERSION_ALL_USERS ${LANG_PASHTO} "Reinstall version {VERSION} for all users." + LangString MULTIUSER_REINSTALL_SAME_VERSION_CURRENT_USER ${LANG_PASHTO} "Reinstall version {VERSION} for current user." + LangString MULTIUSER_REINSTALL_DIFF_VERSION_ALL_USERS ${LANG_PASHTO} "Uninstall version {OLD_VERSION} and install version {VERSION} for all users." + LangString MULTIUSER_REINSTALL_DIFF_VERSION_CURRENT_USER ${LANG_PASHTO} "Uninstall version {OLD_VERSION} and install version {VERSION} for current user." + LangString MULTIUSER_RUN_AS_ADMIN ${LANG_PASHTO} "You need to run this program as administrator." + LangString MULTIUSER_ADMIN_CREDENTIALS_REQUIRED ${LANG_PASHTO} "Administrator credentials required." + LangString MULTIUSER_ADMIN_UNINSTALL_CREDENTIALS_REQUIRED ${LANG_PASHTO} "Administrator credentials required for uninstall." + ; error messages - not so important + LangString MULTIUSER_INVALID_PARAMS ${LANG_PASHTO} "Invalid combination of paramaters." + LangString MULTIUSER_NOT_INSTALLED ${LANG_PASHTO} "There is no installation of $(^NameDA)." + LangString MULTIUSER_INSTALLATION_FOR_CURRENT_USER_NOT_SUPPORTED ${LANG_PASHTO} "The operating system doesn't support current user installations." + LangString MULTIUSER_ADMIN_ACCOUNT_LOGIN_REQUIRED ${LANG_PASHTO} "You need to login with an account that is a member of the administrators group to continue." + LangString MULTIUSER_ELEVATION_NOT_SUPPORTED ${LANG_PASHTO} "The operating system doesn't support elevation." + LangString MULTIUSER_LOGON_SERVICE_NOT_RUNNING ${LANG_PASHTO} "Unable to elevate, Secondary Logon service not running." + LangString MULTIUSER_ELEVATION_ERROR ${LANG_PASHTO} "Unable to elevate, error {ERROR}." +!endif + +!ifdef LANG_POLISH + LangString MULTIUSER_PAGE_TITLE ${LANG_POLISH} "Choose Users" + LangString MULTIUSER_INSTALL_PAGE_SUBTITLE ${LANG_POLISH} "Choose for which users to install $(^NameDA)." + LangString MULTIUSER_UNINSTALL_PAGE_SUBTITLE ${LANG_POLISH} "Choose for which users to remove $(^NameDA)." + LangString MULTIUSER_INSTALL_HEADER ${LANG_POLISH} "Select whether to install $(^NameDA) for all users or for current user." + LangString MULTIUSER_UNINSTALL_HEADER ${LANG_POLISH} "$(^NameDA) is installed both for all users and for current user.$\r$\nSelect which installation to remove." + LangString MULTIUSER_ALL_USERS ${LANG_POLISH} "For &anyone who uses this computer (all users)" + LangString MULTIUSER_CURRENT_USER ${LANG_POLISH} "For &me ({USER})" + LangString MULTIUSER_ALL_USERS_UMUI ${LANG_POLISH} "For anyone who uses this computer (all users)" + LangString MULTIUSER_CURRENT_USER_UMUI ${LANG_POLISH} "For me ({USER})" + LangString MULTIUSER_NEW_INSTALLATION_ALL_USERS ${LANG_POLISH} "Fresh install for all users." + LangString MULTIUSER_NEW_INSTALLATION_CURRENT_USER ${LANG_POLISH} "Fresh install for current user." + LangString MULTIUSER_INSTALLED_ALL_USERS ${LANG_POLISH} "Version {VERSION} is installed for all users in $\"{FOLDER}$\"." + LangString MULTIUSER_INSTALLED_CURRENT_USER ${LANG_POLISH} "Version {VERSION} is installed for current user in $\"{FOLDER}$\"." + LangString MULTIUSER_REINSTALL_SAME_VERSION_ALL_USERS ${LANG_POLISH} "Reinstall version {VERSION} for all users." + LangString MULTIUSER_REINSTALL_SAME_VERSION_CURRENT_USER ${LANG_POLISH} "Reinstall version {VERSION} for current user." + LangString MULTIUSER_REINSTALL_DIFF_VERSION_ALL_USERS ${LANG_POLISH} "Uninstall version {OLD_VERSION} and install version {VERSION} for all users." + LangString MULTIUSER_REINSTALL_DIFF_VERSION_CURRENT_USER ${LANG_POLISH} "Uninstall version {OLD_VERSION} and install version {VERSION} for current user." + LangString MULTIUSER_RUN_AS_ADMIN ${LANG_POLISH} "You need to run this program as administrator." + LangString MULTIUSER_ADMIN_CREDENTIALS_REQUIRED ${LANG_POLISH} "Administrator credentials required." + LangString MULTIUSER_ADMIN_UNINSTALL_CREDENTIALS_REQUIRED ${LANG_POLISH} "Administrator credentials required for uninstall." + ; error messages - not so important + LangString MULTIUSER_INVALID_PARAMS ${LANG_POLISH} "Invalid combination of paramaters." + LangString MULTIUSER_NOT_INSTALLED ${LANG_POLISH} "There is no installation of $(^NameDA)." + LangString MULTIUSER_INSTALLATION_FOR_CURRENT_USER_NOT_SUPPORTED ${LANG_POLISH} "The operating system doesn't support current user installations." + LangString MULTIUSER_ADMIN_ACCOUNT_LOGIN_REQUIRED ${LANG_POLISH} "You need to login with an account that is a member of the administrators group to continue." + LangString MULTIUSER_ELEVATION_NOT_SUPPORTED ${LANG_POLISH} "The operating system doesn't support elevation." + LangString MULTIUSER_LOGON_SERVICE_NOT_RUNNING ${LANG_POLISH} "Unable to elevate, Secondary Logon service not running." + LangString MULTIUSER_ELEVATION_ERROR ${LANG_POLISH} "Unable to elevate, error {ERROR}." +!endif + +!ifdef LANG_PORTUGUESE + LangString MULTIUSER_PAGE_TITLE ${LANG_PORTUGUESE} "Choose Users" + LangString MULTIUSER_INSTALL_PAGE_SUBTITLE ${LANG_PORTUGUESE} "Choose for which users to install $(^NameDA)." + LangString MULTIUSER_UNINSTALL_PAGE_SUBTITLE ${LANG_PORTUGUESE} "Choose for which users to remove $(^NameDA)." + LangString MULTIUSER_INSTALL_HEADER ${LANG_PORTUGUESE} "Select whether to install $(^NameDA) for all users or for current user." + LangString MULTIUSER_UNINSTALL_HEADER ${LANG_PORTUGUESE} "$(^NameDA) is installed both for all users and for current user.$\r$\nSelect which installation to remove." + LangString MULTIUSER_ALL_USERS ${LANG_PORTUGUESE} "For &anyone who uses this computer (all users)" + LangString MULTIUSER_CURRENT_USER ${LANG_PORTUGUESE} "For &me ({USER})" + LangString MULTIUSER_ALL_USERS_UMUI ${LANG_PORTUGUESE} "For anyone who uses this computer (all users)" + LangString MULTIUSER_CURRENT_USER_UMUI ${LANG_PORTUGUESE} "For me ({USER})" + LangString MULTIUSER_NEW_INSTALLATION_ALL_USERS ${LANG_PORTUGUESE} "Fresh install for all users." + LangString MULTIUSER_NEW_INSTALLATION_CURRENT_USER ${LANG_PORTUGUESE} "Fresh install for current user." + LangString MULTIUSER_INSTALLED_ALL_USERS ${LANG_PORTUGUESE} "Version {VERSION} is installed for all users in $\"{FOLDER}$\"." + LangString MULTIUSER_INSTALLED_CURRENT_USER ${LANG_PORTUGUESE} "Version {VERSION} is installed for current user in $\"{FOLDER}$\"." + LangString MULTIUSER_REINSTALL_SAME_VERSION_ALL_USERS ${LANG_PORTUGUESE} "Reinstall version {VERSION} for all users." + LangString MULTIUSER_REINSTALL_SAME_VERSION_CURRENT_USER ${LANG_PORTUGUESE} "Reinstall version {VERSION} for current user." + LangString MULTIUSER_REINSTALL_DIFF_VERSION_ALL_USERS ${LANG_PORTUGUESE} "Uninstall version {OLD_VERSION} and install version {VERSION} for all users." + LangString MULTIUSER_REINSTALL_DIFF_VERSION_CURRENT_USER ${LANG_PORTUGUESE} "Uninstall version {OLD_VERSION} and install version {VERSION} for current user." + LangString MULTIUSER_RUN_AS_ADMIN ${LANG_PORTUGUESE} "You need to run this program as administrator." + LangString MULTIUSER_ADMIN_CREDENTIALS_REQUIRED ${LANG_PORTUGUESE} "Administrator credentials required." + LangString MULTIUSER_ADMIN_UNINSTALL_CREDENTIALS_REQUIRED ${LANG_PORTUGUESE} "Administrator credentials required for uninstall." + ; error messages - not so important + LangString MULTIUSER_INVALID_PARAMS ${LANG_PORTUGUESE} "Invalid combination of paramaters." + LangString MULTIUSER_NOT_INSTALLED ${LANG_PORTUGUESE} "There is no installation of $(^NameDA)." + LangString MULTIUSER_INSTALLATION_FOR_CURRENT_USER_NOT_SUPPORTED ${LANG_PORTUGUESE} "The operating system doesn't support current user installations." + LangString MULTIUSER_ADMIN_ACCOUNT_LOGIN_REQUIRED ${LANG_PORTUGUESE} "You need to login with an account that is a member of the administrators group to continue." + LangString MULTIUSER_ELEVATION_NOT_SUPPORTED ${LANG_PORTUGUESE} "The operating system doesn't support elevation." + LangString MULTIUSER_LOGON_SERVICE_NOT_RUNNING ${LANG_PORTUGUESE} "Unable to elevate, Secondary Logon service not running." + LangString MULTIUSER_ELEVATION_ERROR ${LANG_PORTUGUESE} "Unable to elevate, error {ERROR}." +!endif + +!ifdef LANG_PORTUGUESEBR + LangString MULTIUSER_PAGE_TITLE ${LANG_PORTUGUESEBR} "Choose Users" + LangString MULTIUSER_INSTALL_PAGE_SUBTITLE ${LANG_PORTUGUESEBR} "Choose for which users to install $(^NameDA)." + LangString MULTIUSER_UNINSTALL_PAGE_SUBTITLE ${LANG_PORTUGUESEBR} "Choose for which users to remove $(^NameDA)." + LangString MULTIUSER_INSTALL_HEADER ${LANG_PORTUGUESEBR} "Select whether to install $(^NameDA) for all users or for current user." + LangString MULTIUSER_UNINSTALL_HEADER ${LANG_PORTUGUESEBR} "$(^NameDA) is installed both for all users and for current user.$\r$\nSelect which installation to remove." + LangString MULTIUSER_ALL_USERS ${LANG_PORTUGUESEBR} "For &anyone who uses this computer (all users)" + LangString MULTIUSER_CURRENT_USER ${LANG_PORTUGUESEBR} "For &me ({USER})" + LangString MULTIUSER_ALL_USERS_UMUI ${LANG_PORTUGUESEBR} "For anyone who uses this computer (all users)" + LangString MULTIUSER_CURRENT_USER_UMUI ${LANG_PORTUGUESEBR} "For me ({USER})" + LangString MULTIUSER_NEW_INSTALLATION_ALL_USERS ${LANG_PORTUGUESEBR} "Fresh install for all users." + LangString MULTIUSER_NEW_INSTALLATION_CURRENT_USER ${LANG_PORTUGUESEBR} "Fresh install for current user." + LangString MULTIUSER_INSTALLED_ALL_USERS ${LANG_PORTUGUESEBR} "Version {VERSION} is installed for all users in $\"{FOLDER}$\"." + LangString MULTIUSER_INSTALLED_CURRENT_USER ${LANG_PORTUGUESEBR} "Version {VERSION} is installed for current user in $\"{FOLDER}$\"." + LangString MULTIUSER_REINSTALL_SAME_VERSION_ALL_USERS ${LANG_PORTUGUESEBR} "Reinstall version {VERSION} for all users." + LangString MULTIUSER_REINSTALL_SAME_VERSION_CURRENT_USER ${LANG_PORTUGUESEBR} "Reinstall version {VERSION} for current user." + LangString MULTIUSER_REINSTALL_DIFF_VERSION_ALL_USERS ${LANG_PORTUGUESEBR} "Uninstall version {OLD_VERSION} and install version {VERSION} for all users." + LangString MULTIUSER_REINSTALL_DIFF_VERSION_CURRENT_USER ${LANG_PORTUGUESEBR} "Uninstall version {OLD_VERSION} and install version {VERSION} for current user." + LangString MULTIUSER_RUN_AS_ADMIN ${LANG_PORTUGUESEBR} "You need to run this program as administrator." + LangString MULTIUSER_ADMIN_CREDENTIALS_REQUIRED ${LANG_PORTUGUESEBR} "Administrator credentials required." + LangString MULTIUSER_ADMIN_UNINSTALL_CREDENTIALS_REQUIRED ${LANG_PORTUGUESEBR} "Administrator credentials required for uninstall." + ; error messages - not so important + LangString MULTIUSER_INVALID_PARAMS ${LANG_PORTUGUESEBR} "Invalid combination of paramaters." + LangString MULTIUSER_NOT_INSTALLED ${LANG_PORTUGUESEBR} "There is no installation of $(^NameDA)." + LangString MULTIUSER_INSTALLATION_FOR_CURRENT_USER_NOT_SUPPORTED ${LANG_PORTUGUESEBR} "The operating system doesn't support current user installations." + LangString MULTIUSER_ADMIN_ACCOUNT_LOGIN_REQUIRED ${LANG_PORTUGUESEBR} "You need to login with an account that is a member of the administrators group to continue." + LangString MULTIUSER_ELEVATION_NOT_SUPPORTED ${LANG_PORTUGUESEBR} "The operating system doesn't support elevation." + LangString MULTIUSER_LOGON_SERVICE_NOT_RUNNING ${LANG_PORTUGUESEBR} "Unable to elevate, Secondary Logon service not running." + LangString MULTIUSER_ELEVATION_ERROR ${LANG_PORTUGUESEBR} "Unable to elevate, error {ERROR}." +!endif + +!ifdef LANG_ROMANIAN + LangString MULTIUSER_PAGE_TITLE ${LANG_ROMANIAN} "Choose Users" + LangString MULTIUSER_INSTALL_PAGE_SUBTITLE ${LANG_ROMANIAN} "Choose for which users to install $(^NameDA)." + LangString MULTIUSER_UNINSTALL_PAGE_SUBTITLE ${LANG_ROMANIAN} "Choose for which users to remove $(^NameDA)." + LangString MULTIUSER_INSTALL_HEADER ${LANG_ROMANIAN} "Select whether to install $(^NameDA) for all users or for current user." + LangString MULTIUSER_UNINSTALL_HEADER ${LANG_ROMANIAN} "$(^NameDA) is installed both for all users and for current user.$\r$\nSelect which installation to remove." + LangString MULTIUSER_ALL_USERS ${LANG_ROMANIAN} "For &anyone who uses this computer (all users)" + LangString MULTIUSER_CURRENT_USER ${LANG_ROMANIAN} "For &me ({USER})" + LangString MULTIUSER_ALL_USERS_UMUI ${LANG_ROMANIAN} "For anyone who uses this computer (all users)" + LangString MULTIUSER_CURRENT_USER_UMUI ${LANG_ROMANIAN} "For me ({USER})" + LangString MULTIUSER_NEW_INSTALLATION_ALL_USERS ${LANG_ROMANIAN} "Fresh install for all users." + LangString MULTIUSER_NEW_INSTALLATION_CURRENT_USER ${LANG_ROMANIAN} "Fresh install for current user." + LangString MULTIUSER_INSTALLED_ALL_USERS ${LANG_ROMANIAN} "Version {VERSION} is installed for all users in $\"{FOLDER}$\"." + LangString MULTIUSER_INSTALLED_CURRENT_USER ${LANG_ROMANIAN} "Version {VERSION} is installed for current user in $\"{FOLDER}$\"." + LangString MULTIUSER_REINSTALL_SAME_VERSION_ALL_USERS ${LANG_ROMANIAN} "Reinstall version {VERSION} for all users." + LangString MULTIUSER_REINSTALL_SAME_VERSION_CURRENT_USER ${LANG_ROMANIAN} "Reinstall version {VERSION} for current user." + LangString MULTIUSER_REINSTALL_DIFF_VERSION_ALL_USERS ${LANG_ROMANIAN} "Uninstall version {OLD_VERSION} and install version {VERSION} for all users." + LangString MULTIUSER_REINSTALL_DIFF_VERSION_CURRENT_USER ${LANG_ROMANIAN} "Uninstall version {OLD_VERSION} and install version {VERSION} for current user." + LangString MULTIUSER_RUN_AS_ADMIN ${LANG_ROMANIAN} "You need to run this program as administrator." + LangString MULTIUSER_ADMIN_CREDENTIALS_REQUIRED ${LANG_ROMANIAN} "Administrator credentials required." + LangString MULTIUSER_ADMIN_UNINSTALL_CREDENTIALS_REQUIRED ${LANG_ROMANIAN} "Administrator credentials required for uninstall." + ; error messages - not so important + LangString MULTIUSER_INVALID_PARAMS ${LANG_ROMANIAN} "Invalid combination of paramaters." + LangString MULTIUSER_NOT_INSTALLED ${LANG_ROMANIAN} "There is no installation of $(^NameDA)." + LangString MULTIUSER_INSTALLATION_FOR_CURRENT_USER_NOT_SUPPORTED ${LANG_ROMANIAN} "The operating system doesn't support current user installations." + LangString MULTIUSER_ADMIN_ACCOUNT_LOGIN_REQUIRED ${LANG_ROMANIAN} "You need to login with an account that is a member of the administrators group to continue." + LangString MULTIUSER_ELEVATION_NOT_SUPPORTED ${LANG_ROMANIAN} "The operating system doesn't support elevation." + LangString MULTIUSER_LOGON_SERVICE_NOT_RUNNING ${LANG_ROMANIAN} "Unable to elevate, Secondary Logon service not running." + LangString MULTIUSER_ELEVATION_ERROR ${LANG_ROMANIAN} "Unable to elevate, error {ERROR}." +!endif + +!ifdef LANG_RUSSIAN + LangString MULTIUSER_PAGE_TITLE ${LANG_RUSSIAN} "Choose Users" + LangString MULTIUSER_INSTALL_PAGE_SUBTITLE ${LANG_RUSSIAN} "Choose for which users to install $(^NameDA)." + LangString MULTIUSER_UNINSTALL_PAGE_SUBTITLE ${LANG_RUSSIAN} "Choose for which users to remove $(^NameDA)." + LangString MULTIUSER_INSTALL_HEADER ${LANG_RUSSIAN} "Select whether to install $(^NameDA) for all users or for current user." + LangString MULTIUSER_UNINSTALL_HEADER ${LANG_RUSSIAN} "$(^NameDA) is installed both for all users and for current user.$\r$\nSelect which installation to remove." + LangString MULTIUSER_ALL_USERS ${LANG_RUSSIAN} "For &anyone who uses this computer (all users)" + LangString MULTIUSER_CURRENT_USER ${LANG_RUSSIAN} "For &me ({USER})" + LangString MULTIUSER_ALL_USERS_UMUI ${LANG_RUSSIAN} "For anyone who uses this computer (all users)" + LangString MULTIUSER_CURRENT_USER_UMUI ${LANG_RUSSIAN} "For me ({USER})" + LangString MULTIUSER_NEW_INSTALLATION_ALL_USERS ${LANG_RUSSIAN} "Fresh install for all users." + LangString MULTIUSER_NEW_INSTALLATION_CURRENT_USER ${LANG_RUSSIAN} "Fresh install for current user." + LangString MULTIUSER_INSTALLED_ALL_USERS ${LANG_RUSSIAN} "Version {VERSION} is installed for all users in $\"{FOLDER}$\"." + LangString MULTIUSER_INSTALLED_CURRENT_USER ${LANG_RUSSIAN} "Version {VERSION} is installed for current user in $\"{FOLDER}$\"." + LangString MULTIUSER_REINSTALL_SAME_VERSION_ALL_USERS ${LANG_RUSSIAN} "Reinstall version {VERSION} for all users." + LangString MULTIUSER_REINSTALL_SAME_VERSION_CURRENT_USER ${LANG_RUSSIAN} "Reinstall version {VERSION} for current user." + LangString MULTIUSER_REINSTALL_DIFF_VERSION_ALL_USERS ${LANG_RUSSIAN} "Uninstall version {OLD_VERSION} and install version {VERSION} for all users." + LangString MULTIUSER_REINSTALL_DIFF_VERSION_CURRENT_USER ${LANG_RUSSIAN} "Uninstall version {OLD_VERSION} and install version {VERSION} for current user." + LangString MULTIUSER_RUN_AS_ADMIN ${LANG_RUSSIAN} "You need to run this program as administrator." + LangString MULTIUSER_ADMIN_CREDENTIALS_REQUIRED ${LANG_RUSSIAN} "Administrator credentials required." + LangString MULTIUSER_ADMIN_UNINSTALL_CREDENTIALS_REQUIRED ${LANG_RUSSIAN} "Administrator credentials required for uninstall." + ; error messages - not so important + LangString MULTIUSER_INVALID_PARAMS ${LANG_RUSSIAN} "Invalid combination of paramaters." + LangString MULTIUSER_NOT_INSTALLED ${LANG_RUSSIAN} "There is no installation of $(^NameDA)." + LangString MULTIUSER_INSTALLATION_FOR_CURRENT_USER_NOT_SUPPORTED ${LANG_RUSSIAN} "The operating system doesn't support current user installations." + LangString MULTIUSER_ADMIN_ACCOUNT_LOGIN_REQUIRED ${LANG_RUSSIAN} "You need to login with an account that is a member of the administrators group to continue." + LangString MULTIUSER_ELEVATION_NOT_SUPPORTED ${LANG_RUSSIAN} "The operating system doesn't support elevation." + LangString MULTIUSER_LOGON_SERVICE_NOT_RUNNING ${LANG_RUSSIAN} "Unable to elevate, Secondary Logon service not running." + LangString MULTIUSER_ELEVATION_ERROR ${LANG_RUSSIAN} "Unable to elevate, error {ERROR}." +!endif + +!ifdef LANG_SCOTSGAELIC + LangString MULTIUSER_PAGE_TITLE ${LANG_SCOTSGAELIC} "Choose Users" + LangString MULTIUSER_INSTALL_PAGE_SUBTITLE ${LANG_SCOTSGAELIC} "Choose for which users to install $(^NameDA)." + LangString MULTIUSER_UNINSTALL_PAGE_SUBTITLE ${LANG_SCOTSGAELIC} "Choose for which users to remove $(^NameDA)." + LangString MULTIUSER_INSTALL_HEADER ${LANG_SCOTSGAELIC} "Select whether to install $(^NameDA) for all users or for current user." + LangString MULTIUSER_UNINSTALL_HEADER ${LANG_SCOTSGAELIC} "$(^NameDA) is installed both for all users and for current user.$\r$\nSelect which installation to remove." + LangString MULTIUSER_ALL_USERS ${LANG_SCOTSGAELIC} "For anyone who uses this computer (all users)" + LangString MULTIUSER_CURRENT_USER ${LANG_SCOTSGAELIC} "For me ({USER})" + LangString MULTIUSER_NEW_INSTALLATION_ALL_USERS ${LANG_SCOTSGAELIC} "Fresh install for all users." + LangString MULTIUSER_NEW_INSTALLATION_CURRENT_USER ${LANG_SCOTSGAELIC} "Fresh install for current user." + LangString MULTIUSER_INSTALLED_ALL_USERS ${LANG_SCOTSGAELIC} "Version {VERSION} is installed for all users in $\"{FOLDER}$\"." + LangString MULTIUSER_INSTALLED_CURRENT_USER ${LANG_SCOTSGAELIC} "Version {VERSION} is installed for current user in $\"{FOLDER}$\"." + LangString MULTIUSER_REINSTALL_SAME_VERSION_ALL_USERS ${LANG_SCOTSGAELIC} "Reinstall version {VERSION} for all users." + LangString MULTIUSER_REINSTALL_SAME_VERSION_CURRENT_USER ${LANG_SCOTSGAELIC} "Reinstall version {VERSION} for current user." + LangString MULTIUSER_REINSTALL_DIFF_VERSION_ALL_USERS ${LANG_SCOTSGAELIC} "Uninstall version {OLD_VERSION} and install version {VERSION} for all users." + LangString MULTIUSER_REINSTALL_DIFF_VERSION_CURRENT_USER ${LANG_SCOTSGAELIC} "Uninstall version {OLD_VERSION} and install version {VERSION} for current user." + LangString MULTIUSER_RUN_AS_ADMIN ${LANG_SCOTSGAELIC} "You need to run this program as administrator." + LangString MULTIUSER_ADMIN_CREDENTIALS_REQUIRED ${LANG_SCOTSGAELIC} "Administrator credentials required." + LangString MULTIUSER_ADMIN_UNINSTALL_CREDENTIALS_REQUIRED ${LANG_SCOTSGAELIC} "Administrator credentials required for uninstall." + ; error messages - not so important + LangString MULTIUSER_INVALID_PARAMS ${LANG_SCOTSGAELIC} "Invalid combination of paramaters." + LangString MULTIUSER_NOT_INSTALLED ${LANG_SCOTSGAELIC} "There is no installation of $(^NameDA)." + LangString MULTIUSER_INSTALLATION_FOR_CURRENT_USER_NOT_SUPPORTED ${LANG_SCOTSGAELIC} "The operating system doesn't support current user installations." + LangString MULTIUSER_ADMIN_ACCOUNT_LOGIN_REQUIRED ${LANG_SCOTSGAELIC} "You need to login with an account that is a member of the administrators group to continue." + LangString MULTIUSER_ELEVATION_NOT_SUPPORTED ${LANG_SCOTSGAELIC} "The operating system doesn't support elevation." + LangString MULTIUSER_LOGON_SERVICE_NOT_RUNNING ${LANG_SCOTSGAELIC} "Unable to elevate, Secondary Logon service not running." + LangString MULTIUSER_ELEVATION_ERROR ${LANG_SCOTSGAELIC} "Unable to elevate, error {ERROR}." +!endif + +!ifdef LANG_SERBIAN + LangString MULTIUSER_PAGE_TITLE ${LANG_SERBIAN} "Choose Users" + LangString MULTIUSER_INSTALL_PAGE_SUBTITLE ${LANG_SERBIAN} "Choose for which users to install $(^NameDA)." + LangString MULTIUSER_UNINSTALL_PAGE_SUBTITLE ${LANG_SERBIAN} "Choose for which users to remove $(^NameDA)." + LangString MULTIUSER_INSTALL_HEADER ${LANG_SERBIAN} "Select whether to install $(^NameDA) for all users or for current user." + LangString MULTIUSER_UNINSTALL_HEADER ${LANG_SERBIAN} "$(^NameDA) is installed both for all users and for current user.$\r$\nSelect which installation to remove." + LangString MULTIUSER_ALL_USERS ${LANG_SERBIAN} "For &anyone who uses this computer (all users)" + LangString MULTIUSER_CURRENT_USER ${LANG_SERBIAN} "For &me ({USER})" + LangString MULTIUSER_ALL_USERS_UMUI ${LANG_SERBIAN} "For anyone who uses this computer (all users)" + LangString MULTIUSER_CURRENT_USER_UMUI ${LANG_SERBIAN} "For me ({USER})" + LangString MULTIUSER_NEW_INSTALLATION_ALL_USERS ${LANG_SERBIAN} "Fresh install for all users." + LangString MULTIUSER_NEW_INSTALLATION_CURRENT_USER ${LANG_SERBIAN} "Fresh install for current user." + LangString MULTIUSER_INSTALLED_ALL_USERS ${LANG_SERBIAN} "Version {VERSION} is installed for all users in $\"{FOLDER}$\"." + LangString MULTIUSER_INSTALLED_CURRENT_USER ${LANG_SERBIAN} "Version {VERSION} is installed for current user in $\"{FOLDER}$\"." + LangString MULTIUSER_REINSTALL_SAME_VERSION_ALL_USERS ${LANG_SERBIAN} "Reinstall version {VERSION} for all users." + LangString MULTIUSER_REINSTALL_SAME_VERSION_CURRENT_USER ${LANG_SERBIAN} "Reinstall version {VERSION} for current user." + LangString MULTIUSER_REINSTALL_DIFF_VERSION_ALL_USERS ${LANG_SERBIAN} "Uninstall version {OLD_VERSION} and install version {VERSION} for all users." + LangString MULTIUSER_REINSTALL_DIFF_VERSION_CURRENT_USER ${LANG_SERBIAN} "Uninstall version {OLD_VERSION} and install version {VERSION} for current user." + LangString MULTIUSER_RUN_AS_ADMIN ${LANG_SERBIAN} "You need to run this program as administrator." + LangString MULTIUSER_ADMIN_CREDENTIALS_REQUIRED ${LANG_SERBIAN} "Administrator credentials required." + LangString MULTIUSER_ADMIN_UNINSTALL_CREDENTIALS_REQUIRED ${LANG_SERBIAN} "Administrator credentials required for uninstall." + ; error messages - not so important + LangString MULTIUSER_INVALID_PARAMS ${LANG_SERBIAN} "Invalid combination of paramaters." + LangString MULTIUSER_NOT_INSTALLED ${LANG_SERBIAN} "There is no installation of $(^NameDA)." + LangString MULTIUSER_INSTALLATION_FOR_CURRENT_USER_NOT_SUPPORTED ${LANG_SERBIAN} "The operating system doesn't support current user installations." + LangString MULTIUSER_ADMIN_ACCOUNT_LOGIN_REQUIRED ${LANG_SERBIAN} "You need to login with an account that is a member of the administrators group to continue." + LangString MULTIUSER_ELEVATION_NOT_SUPPORTED ${LANG_SERBIAN} "The operating system doesn't support elevation." + LangString MULTIUSER_LOGON_SERVICE_NOT_RUNNING ${LANG_SERBIAN} "Unable to elevate, Secondary Logon service not running." + LangString MULTIUSER_ELEVATION_ERROR ${LANG_SERBIAN} "Unable to elevate, error {ERROR}." +!endif + +!ifdef LANG_SERBIANLATIN + LangString MULTIUSER_PAGE_TITLE ${LANG_SERBIANLATIN} "Choose Users" + LangString MULTIUSER_INSTALL_PAGE_SUBTITLE ${LANG_SERBIANLATIN} "Choose for which users to install $(^NameDA)." + LangString MULTIUSER_UNINSTALL_PAGE_SUBTITLE ${LANG_SERBIANLATIN} "Choose for which users to remove $(^NameDA)." + LangString MULTIUSER_INSTALL_HEADER ${LANG_SERBIANLATIN} "Select whether to install $(^NameDA) for all users or for current user." + LangString MULTIUSER_UNINSTALL_HEADER ${LANG_SERBIANLATIN} "$(^NameDA) is installed both for all users and for current user.$\r$\nSelect which installation to remove." + LangString MULTIUSER_ALL_USERS ${LANG_SERBIANLATIN} "For anyone who uses this computer (all users)" + LangString MULTIUSER_CURRENT_USER ${LANG_SERBIANLATIN} "For me ({USER})" + LangString MULTIUSER_NEW_INSTALLATION_ALL_USERS ${LANG_SERBIANLATIN} "Fresh install for all users." + LangString MULTIUSER_NEW_INSTALLATION_CURRENT_USER ${LANG_SERBIANLATIN} "Fresh install for current user." + LangString MULTIUSER_INSTALLED_ALL_USERS ${LANG_SERBIANLATIN} "Version {VERSION} is installed for all users in $\"{FOLDER}$\"." + LangString MULTIUSER_INSTALLED_CURRENT_USER ${LANG_SERBIANLATIN} "Version {VERSION} is installed for current user in $\"{FOLDER}$\"." + LangString MULTIUSER_REINSTALL_SAME_VERSION_ALL_USERS ${LANG_SERBIANLATIN} "Reinstall version {VERSION} for all users." + LangString MULTIUSER_REINSTALL_SAME_VERSION_CURRENT_USER ${LANG_SERBIANLATIN} "Reinstall version {VERSION} for current user." + LangString MULTIUSER_REINSTALL_DIFF_VERSION_ALL_USERS ${LANG_SERBIANLATIN} "Uninstall version {OLD_VERSION} and install version {VERSION} for all users." + LangString MULTIUSER_REINSTALL_DIFF_VERSION_CURRENT_USER ${LANG_SERBIANLATIN} "Uninstall version {OLD_VERSION} and install version {VERSION} for current user." + LangString MULTIUSER_RUN_AS_ADMIN ${LANG_SERBIANLATIN} "You need to run this program as administrator." + LangString MULTIUSER_ADMIN_CREDENTIALS_REQUIRED ${LANG_SERBIANLATIN} "Administrator credentials required." + LangString MULTIUSER_ADMIN_UNINSTALL_CREDENTIALS_REQUIRED ${LANG_SERBIANLATIN} "Administrator credentials required for uninstall." + ; error messages - not so important + LangString MULTIUSER_INVALID_PARAMS ${LANG_SERBIANLATIN} "Invalid combination of paramaters." + LangString MULTIUSER_NOT_INSTALLED ${LANG_SERBIANLATIN} "There is no installation of $(^NameDA)." + LangString MULTIUSER_INSTALLATION_FOR_CURRENT_USER_NOT_SUPPORTED ${LANG_SERBIANLATIN} "The operating system doesn't support current user installations." + LangString MULTIUSER_ADMIN_ACCOUNT_LOGIN_REQUIRED ${LANG_SERBIANLATIN} "You need to login with an account that is a member of the administrators group to continue." + LangString MULTIUSER_ELEVATION_NOT_SUPPORTED ${LANG_SERBIANLATIN} "The operating system doesn't support elevation." + LangString MULTIUSER_LOGON_SERVICE_NOT_RUNNING ${LANG_SERBIANLATIN} "Unable to elevate, Secondary Logon service not running." + LangString MULTIUSER_ELEVATION_ERROR ${LANG_SERBIANLATIN} "Unable to elevate, error {ERROR}." +!endif + +!ifdef LANG_SIMPCHINESE + LangString MULTIUSER_PAGE_TITLE ${LANG_SIMPCHINESE} "Choose Users" + LangString MULTIUSER_INSTALL_PAGE_SUBTITLE ${LANG_SIMPCHINESE} "Choose for which users to install $(^NameDA)." + LangString MULTIUSER_UNINSTALL_PAGE_SUBTITLE ${LANG_SIMPCHINESE} "Choose for which users to remove $(^NameDA)." + LangString MULTIUSER_INSTALL_HEADER ${LANG_SIMPCHINESE} "Select whether to install $(^NameDA) for all users or for current user." + LangString MULTIUSER_UNINSTALL_HEADER ${LANG_SIMPCHINESE} "$(^NameDA) is installed both for all users and for current user.$\r$\nSelect which installation to remove." + LangString MULTIUSER_ALL_USERS ${LANG_SIMPCHINESE} "For &anyone who uses this computer (all users)" + LangString MULTIUSER_CURRENT_USER ${LANG_SIMPCHINESE} "For &me ({USER})" + LangString MULTIUSER_ALL_USERS_UMUI ${LANG_SIMPCHINESE} "For anyone who uses this computer (all users)" + LangString MULTIUSER_CURRENT_USER_UMUI ${LANG_SIMPCHINESE} "For me ({USER})" + LangString MULTIUSER_NEW_INSTALLATION_ALL_USERS ${LANG_SIMPCHINESE} "Fresh install for all users." + LangString MULTIUSER_NEW_INSTALLATION_CURRENT_USER ${LANG_SIMPCHINESE} "Fresh install for current user." + LangString MULTIUSER_INSTALLED_ALL_USERS ${LANG_SIMPCHINESE} "Version {VERSION} is installed for all users in $\"{FOLDER}$\"." + LangString MULTIUSER_INSTALLED_CURRENT_USER ${LANG_SIMPCHINESE} "Version {VERSION} is installed for current user in $\"{FOLDER}$\"." + LangString MULTIUSER_REINSTALL_SAME_VERSION_ALL_USERS ${LANG_SIMPCHINESE} "Reinstall version {VERSION} for all users." + LangString MULTIUSER_REINSTALL_SAME_VERSION_CURRENT_USER ${LANG_SIMPCHINESE} "Reinstall version {VERSION} for current user." + LangString MULTIUSER_REINSTALL_DIFF_VERSION_ALL_USERS ${LANG_SIMPCHINESE} "Uninstall version {OLD_VERSION} and install version {VERSION} for all users." + LangString MULTIUSER_REINSTALL_DIFF_VERSION_CURRENT_USER ${LANG_SIMPCHINESE} "Uninstall version {OLD_VERSION} and install version {VERSION} for current user." + LangString MULTIUSER_RUN_AS_ADMIN ${LANG_SIMPCHINESE} "You need to run this program as administrator." + LangString MULTIUSER_ADMIN_CREDENTIALS_REQUIRED ${LANG_SIMPCHINESE} "Administrator credentials required." + LangString MULTIUSER_ADMIN_UNINSTALL_CREDENTIALS_REQUIRED ${LANG_SIMPCHINESE} "Administrator credentials required for uninstall." + ; error messages - not so important + LangString MULTIUSER_INVALID_PARAMS ${LANG_SIMPCHINESE} "Invalid combination of paramaters." + LangString MULTIUSER_NOT_INSTALLED ${LANG_SIMPCHINESE} "There is no installation of $(^NameDA)." + LangString MULTIUSER_INSTALLATION_FOR_CURRENT_USER_NOT_SUPPORTED ${LANG_SIMPCHINESE} "The operating system doesn't support current user installations." + LangString MULTIUSER_ADMIN_ACCOUNT_LOGIN_REQUIRED ${LANG_SIMPCHINESE} "You need to login with an account that is a member of the administrators group to continue." + LangString MULTIUSER_ELEVATION_NOT_SUPPORTED ${LANG_SIMPCHINESE} "The operating system doesn't support elevation." + LangString MULTIUSER_LOGON_SERVICE_NOT_RUNNING ${LANG_SIMPCHINESE} "Unable to elevate, Secondary Logon service not running." + LangString MULTIUSER_ELEVATION_ERROR ${LANG_SIMPCHINESE} "Unable to elevate, error {ERROR}." +!endif + +!ifdef LANG_SLOVAK + LangString MULTIUSER_PAGE_TITLE ${LANG_SLOVAK} "Choose Users" + LangString MULTIUSER_INSTALL_PAGE_SUBTITLE ${LANG_SLOVAK} "Choose for which users to install $(^NameDA)." + LangString MULTIUSER_UNINSTALL_PAGE_SUBTITLE ${LANG_SLOVAK} "Choose for which users to remove $(^NameDA)." + LangString MULTIUSER_INSTALL_HEADER ${LANG_SLOVAK} "Select whether to install $(^NameDA) for all users or for current user." + LangString MULTIUSER_UNINSTALL_HEADER ${LANG_SLOVAK} "$(^NameDA) is installed both for all users and for current user.$\r$\nSelect which installation to remove." + LangString MULTIUSER_ALL_USERS ${LANG_SLOVAK} "For &anyone who uses this computer (all users)" + LangString MULTIUSER_CURRENT_USER ${LANG_SLOVAK} "For &me ({USER})" + LangString MULTIUSER_ALL_USERS_UMUI ${LANG_SLOVAK} "For anyone who uses this computer (all users)" + LangString MULTIUSER_CURRENT_USER_UMUI ${LANG_SLOVAK} "For me ({USER})" + LangString MULTIUSER_NEW_INSTALLATION_ALL_USERS ${LANG_SLOVAK} "Fresh install for all users." + LangString MULTIUSER_NEW_INSTALLATION_CURRENT_USER ${LANG_SLOVAK} "Fresh install for current user." + LangString MULTIUSER_INSTALLED_ALL_USERS ${LANG_SLOVAK} "Version {VERSION} is installed for all users in $\"{FOLDER}$\"." + LangString MULTIUSER_INSTALLED_CURRENT_USER ${LANG_SLOVAK} "Version {VERSION} is installed for current user in $\"{FOLDER}$\"." + LangString MULTIUSER_REINSTALL_SAME_VERSION_ALL_USERS ${LANG_SLOVAK} "Reinstall version {VERSION} for all users." + LangString MULTIUSER_REINSTALL_SAME_VERSION_CURRENT_USER ${LANG_SLOVAK} "Reinstall version {VERSION} for current user." + LangString MULTIUSER_REINSTALL_DIFF_VERSION_ALL_USERS ${LANG_SLOVAK} "Uninstall version {OLD_VERSION} and install version {VERSION} for all users." + LangString MULTIUSER_REINSTALL_DIFF_VERSION_CURRENT_USER ${LANG_SLOVAK} "Uninstall version {OLD_VERSION} and install version {VERSION} for current user." + LangString MULTIUSER_RUN_AS_ADMIN ${LANG_SLOVAK} "You need to run this program as administrator." + LangString MULTIUSER_ADMIN_CREDENTIALS_REQUIRED ${LANG_SLOVAK} "Administrator credentials required." + LangString MULTIUSER_ADMIN_UNINSTALL_CREDENTIALS_REQUIRED ${LANG_SLOVAK} "Administrator credentials required for uninstall." + ; error messages - not so important + LangString MULTIUSER_INVALID_PARAMS ${LANG_SLOVAK} "Invalid combination of paramaters." + LangString MULTIUSER_NOT_INSTALLED ${LANG_SLOVAK} "There is no installation of $(^NameDA)." + LangString MULTIUSER_INSTALLATION_FOR_CURRENT_USER_NOT_SUPPORTED ${LANG_SLOVAK} "The operating system doesn't support current user installations." + LangString MULTIUSER_ADMIN_ACCOUNT_LOGIN_REQUIRED ${LANG_SLOVAK} "You need to login with an account that is a member of the administrators group to continue." + LangString MULTIUSER_ELEVATION_NOT_SUPPORTED ${LANG_SLOVAK} "The operating system doesn't support elevation." + LangString MULTIUSER_LOGON_SERVICE_NOT_RUNNING ${LANG_SLOVAK} "Unable to elevate, Secondary Logon service not running." + LangString MULTIUSER_ELEVATION_ERROR ${LANG_SLOVAK} "Unable to elevate, error {ERROR}." +!endif + +!ifdef LANG_SLOVENIAN + LangString MULTIUSER_PAGE_TITLE ${LANG_SLOVENIAN} "Choose Users" + LangString MULTIUSER_INSTALL_PAGE_SUBTITLE ${LANG_SLOVENIAN} "Choose for which users to install $(^NameDA)." + LangString MULTIUSER_UNINSTALL_PAGE_SUBTITLE ${LANG_SLOVENIAN} "Choose for which users to remove $(^NameDA)." + LangString MULTIUSER_INSTALL_HEADER ${LANG_SLOVENIAN} "Select whether to install $(^NameDA) for all users or for current user." + LangString MULTIUSER_UNINSTALL_HEADER ${LANG_SLOVENIAN} "$(^NameDA) is installed both for all users and for current user.$\r$\nSelect which installation to remove." + LangString MULTIUSER_ALL_USERS ${LANG_SLOVENIAN} "For &anyone who uses this computer (all users)" + LangString MULTIUSER_CURRENT_USER ${LANG_SLOVENIAN} "For &me ({USER})" + LangString MULTIUSER_ALL_USERS_UMUI ${LANG_SLOVENIAN} "For anyone who uses this computer (all users)" + LangString MULTIUSER_CURRENT_USER_UMUI ${LANG_SLOVENIAN} "For me ({USER})" + LangString MULTIUSER_NEW_INSTALLATION_ALL_USERS ${LANG_SLOVENIAN} "Fresh install for all users." + LangString MULTIUSER_NEW_INSTALLATION_CURRENT_USER ${LANG_SLOVENIAN} "Fresh install for current user." + LangString MULTIUSER_INSTALLED_ALL_USERS ${LANG_SLOVENIAN} "Version {VERSION} is installed for all users in $\"{FOLDER}$\"." + LangString MULTIUSER_INSTALLED_CURRENT_USER ${LANG_SLOVENIAN} "Version {VERSION} is installed for current user in $\"{FOLDER}$\"." + LangString MULTIUSER_REINSTALL_SAME_VERSION_ALL_USERS ${LANG_SLOVENIAN} "Reinstall version {VERSION} for all users." + LangString MULTIUSER_REINSTALL_SAME_VERSION_CURRENT_USER ${LANG_SLOVENIAN} "Reinstall version {VERSION} for current user." + LangString MULTIUSER_REINSTALL_DIFF_VERSION_ALL_USERS ${LANG_SLOVENIAN} "Uninstall version {OLD_VERSION} and install version {VERSION} for all users." + LangString MULTIUSER_REINSTALL_DIFF_VERSION_CURRENT_USER ${LANG_SLOVENIAN} "Uninstall version {OLD_VERSION} and install version {VERSION} for current user." + LangString MULTIUSER_RUN_AS_ADMIN ${LANG_SLOVENIAN} "You need to run this program as administrator." + LangString MULTIUSER_ADMIN_CREDENTIALS_REQUIRED ${LANG_SLOVENIAN} "Administrator credentials required." + LangString MULTIUSER_ADMIN_UNINSTALL_CREDENTIALS_REQUIRED ${LANG_SLOVENIAN} "Administrator credentials required for uninstall." + ; error messages - not so important + LangString MULTIUSER_INVALID_PARAMS ${LANG_SLOVENIAN} "Invalid combination of paramaters." + LangString MULTIUSER_NOT_INSTALLED ${LANG_SLOVENIAN} "There is no installation of $(^NameDA)." + LangString MULTIUSER_INSTALLATION_FOR_CURRENT_USER_NOT_SUPPORTED ${LANG_SLOVENIAN} "The operating system doesn't support current user installations." + LangString MULTIUSER_ADMIN_ACCOUNT_LOGIN_REQUIRED ${LANG_SLOVENIAN} "You need to login with an account that is a member of the administrators group to continue." + LangString MULTIUSER_ELEVATION_NOT_SUPPORTED ${LANG_SLOVENIAN} "The operating system doesn't support elevation." + LangString MULTIUSER_LOGON_SERVICE_NOT_RUNNING ${LANG_SLOVENIAN} "Unable to elevate, Secondary Logon service not running." + LangString MULTIUSER_ELEVATION_ERROR ${LANG_SLOVENIAN} "Unable to elevate, error {ERROR}." +!endif + +!ifdef LANG_SPANISH + LangString MULTIUSER_PAGE_TITLE ${LANG_SPANISH} "Choose Users" + LangString MULTIUSER_INSTALL_PAGE_SUBTITLE ${LANG_SPANISH} "Choose for which users to install $(^NameDA)." + LangString MULTIUSER_UNINSTALL_PAGE_SUBTITLE ${LANG_SPANISH} "Choose for which users to remove $(^NameDA)." + LangString MULTIUSER_INSTALL_HEADER ${LANG_SPANISH} "Select whether to install $(^NameDA) for all users or for current user." + LangString MULTIUSER_UNINSTALL_HEADER ${LANG_SPANISH} "$(^NameDA) is installed both for all users and for current user.$\r$\nSelect which installation to remove." + LangString MULTIUSER_ALL_USERS ${LANG_SPANISH} "For &anyone who uses this computer (all users)" + LangString MULTIUSER_CURRENT_USER ${LANG_SPANISH} "For &me ({USER})" + LangString MULTIUSER_ALL_USERS_UMUI ${LANG_SPANISH} "For anyone who uses this computer (all users)" + LangString MULTIUSER_CURRENT_USER_UMUI ${LANG_SPANISH} "For me ({USER})" + LangString MULTIUSER_NEW_INSTALLATION_ALL_USERS ${LANG_SPANISH} "Fresh install for all users." + LangString MULTIUSER_NEW_INSTALLATION_CURRENT_USER ${LANG_SPANISH} "Fresh install for current user." + LangString MULTIUSER_INSTALLED_ALL_USERS ${LANG_SPANISH} "Version {VERSION} is installed for all users in $\"{FOLDER}$\"." + LangString MULTIUSER_INSTALLED_CURRENT_USER ${LANG_SPANISH} "Version {VERSION} is installed for current user in $\"{FOLDER}$\"." + LangString MULTIUSER_REINSTALL_SAME_VERSION_ALL_USERS ${LANG_SPANISH} "Reinstall version {VERSION} for all users." + LangString MULTIUSER_REINSTALL_SAME_VERSION_CURRENT_USER ${LANG_SPANISH} "Reinstall version {VERSION} for current user." + LangString MULTIUSER_REINSTALL_DIFF_VERSION_ALL_USERS ${LANG_SPANISH} "Uninstall version {OLD_VERSION} and install version {VERSION} for all users." + LangString MULTIUSER_REINSTALL_DIFF_VERSION_CURRENT_USER ${LANG_SPANISH} "Uninstall version {OLD_VERSION} and install version {VERSION} for current user." + LangString MULTIUSER_RUN_AS_ADMIN ${LANG_SPANISH} "You need to run this program as administrator." + LangString MULTIUSER_ADMIN_CREDENTIALS_REQUIRED ${LANG_SPANISH} "Administrator credentials required." + LangString MULTIUSER_ADMIN_UNINSTALL_CREDENTIALS_REQUIRED ${LANG_SPANISH} "Administrator credentials required for uninstall." + ; error messages - not so important + LangString MULTIUSER_INVALID_PARAMS ${LANG_SPANISH} "Invalid combination of paramaters." + LangString MULTIUSER_NOT_INSTALLED ${LANG_SPANISH} "There is no installation of $(^NameDA)." + LangString MULTIUSER_INSTALLATION_FOR_CURRENT_USER_NOT_SUPPORTED ${LANG_SPANISH} "The operating system doesn't support current user installations." + LangString MULTIUSER_ADMIN_ACCOUNT_LOGIN_REQUIRED ${LANG_SPANISH} "You need to login with an account that is a member of the administrators group to continue." + LangString MULTIUSER_ELEVATION_NOT_SUPPORTED ${LANG_SPANISH} "The operating system doesn't support elevation." + LangString MULTIUSER_LOGON_SERVICE_NOT_RUNNING ${LANG_SPANISH} "Unable to elevate, Secondary Logon service not running." + LangString MULTIUSER_ELEVATION_ERROR ${LANG_SPANISH} "Unable to elevate, error {ERROR}." +!endif + +!ifdef LANG_SPANISHINTERNATIONAL + LangString MULTIUSER_PAGE_TITLE ${LANG_SPANISHINTERNATIONAL} "Choose Users" + LangString MULTIUSER_INSTALL_PAGE_SUBTITLE ${LANG_SPANISHINTERNATIONAL} "Choose for which users to install $(^NameDA)." + LangString MULTIUSER_UNINSTALL_PAGE_SUBTITLE ${LANG_SPANISHINTERNATIONAL} "Choose for which users to remove $(^NameDA)." + LangString MULTIUSER_INSTALL_HEADER ${LANG_SPANISHINTERNATIONAL} "Select whether to install $(^NameDA) for all users or for current user." + LangString MULTIUSER_UNINSTALL_HEADER ${LANG_SPANISHINTERNATIONAL} "$(^NameDA) is installed both for all users and for current user.$\r$\nSelect which installation to remove." + LangString MULTIUSER_ALL_USERS ${LANG_SPANISHINTERNATIONAL} "For &anyone who uses this computer (all users)" + LangString MULTIUSER_CURRENT_USER ${LANG_SPANISHINTERNATIONAL} "For &me ({USER})" + LangString MULTIUSER_ALL_USERS_UMUI ${LANG_SPANISHINTERNATIONAL} "For anyone who uses this computer (all users)" + LangString MULTIUSER_CURRENT_USER_UMUI ${LANG_SPANISHINTERNATIONAL} "For me ({USER})" + LangString MULTIUSER_NEW_INSTALLATION_ALL_USERS ${LANG_SPANISHINTERNATIONAL} "Fresh install for all users." + LangString MULTIUSER_NEW_INSTALLATION_CURRENT_USER ${LANG_SPANISHINTERNATIONAL} "Fresh install for current user." + LangString MULTIUSER_INSTALLED_ALL_USERS ${LANG_SPANISHINTERNATIONAL} "Version {VERSION} is installed for all users in $\"{FOLDER}$\"." + LangString MULTIUSER_INSTALLED_CURRENT_USER ${LANG_SPANISHINTERNATIONAL} "Version {VERSION} is installed for current user in $\"{FOLDER}$\"." + LangString MULTIUSER_REINSTALL_SAME_VERSION_ALL_USERS ${LANG_SPANISHINTERNATIONAL} "Reinstall version {VERSION} for all users." + LangString MULTIUSER_REINSTALL_SAME_VERSION_CURRENT_USER ${LANG_SPANISHINTERNATIONAL} "Reinstall version {VERSION} for current user." + LangString MULTIUSER_REINSTALL_DIFF_VERSION_ALL_USERS ${LANG_SPANISHINTERNATIONAL} "Uninstall version {OLD_VERSION} and install version {VERSION} for all users." + LangString MULTIUSER_REINSTALL_DIFF_VERSION_CURRENT_USER ${LANG_SPANISHINTERNATIONAL} "Uninstall version {OLD_VERSION} and install version {VERSION} for current user." + LangString MULTIUSER_RUN_AS_ADMIN ${LANG_SPANISHINTERNATIONAL} "You need to run this program as administrator." + LangString MULTIUSER_ADMIN_CREDENTIALS_REQUIRED ${LANG_SPANISHINTERNATIONAL} "Administrator credentials required." + LangString MULTIUSER_ADMIN_UNINSTALL_CREDENTIALS_REQUIRED ${LANG_SPANISHINTERNATIONAL} "Administrator credentials required for uninstall." + ; error messages - not so important + LangString MULTIUSER_INVALID_PARAMS ${LANG_SPANISHINTERNATIONAL} "Invalid combination of paramaters." + LangString MULTIUSER_NOT_INSTALLED ${LANG_SPANISHINTERNATIONAL} "There is no installation of $(^NameDA)." + LangString MULTIUSER_INSTALLATION_FOR_CURRENT_USER_NOT_SUPPORTED ${LANG_SPANISHINTERNATIONAL} "The operating system doesn't support current user installations." + LangString MULTIUSER_ADMIN_ACCOUNT_LOGIN_REQUIRED ${LANG_SPANISHINTERNATIONAL} "You need to login with an account that is a member of the administrators group to continue." + LangString MULTIUSER_ELEVATION_NOT_SUPPORTED ${LANG_SPANISHINTERNATIONAL} "The operating system doesn't support elevation." + LangString MULTIUSER_LOGON_SERVICE_NOT_RUNNING ${LANG_SPANISHINTERNATIONAL} "Unable to elevate, Secondary Logon service not running." + LangString MULTIUSER_ELEVATION_ERROR ${LANG_SPANISHINTERNATIONAL} "Unable to elevate, error {ERROR}." +!endif + +!ifdef LANG_SWEDISH + LangString MULTIUSER_PAGE_TITLE ${LANG_SWEDISH} "Choose Users" + LangString MULTIUSER_INSTALL_PAGE_SUBTITLE ${LANG_SWEDISH} "Choose for which users to install $(^NameDA)." + LangString MULTIUSER_UNINSTALL_PAGE_SUBTITLE ${LANG_SWEDISH} "Choose for which users to remove $(^NameDA)." + LangString MULTIUSER_INSTALL_HEADER ${LANG_SWEDISH} "Select whether to install $(^NameDA) for all users or for current user." + LangString MULTIUSER_UNINSTALL_HEADER ${LANG_SWEDISH} "$(^NameDA) is installed both for all users and for current user.$\r$\nSelect which installation to remove." + LangString MULTIUSER_ALL_USERS ${LANG_SWEDISH} "For &anyone who uses this computer (all users)" + LangString MULTIUSER_CURRENT_USER ${LANG_SWEDISH} "For &me ({USER})" + LangString MULTIUSER_ALL_USERS_UMUI ${LANG_SWEDISH} "For anyone who uses this computer (all users)" + LangString MULTIUSER_CURRENT_USER_UMUI ${LANG_SWEDISH} "For me ({USER})" + LangString MULTIUSER_NEW_INSTALLATION_ALL_USERS ${LANG_SWEDISH} "Fresh install for all users." + LangString MULTIUSER_NEW_INSTALLATION_CURRENT_USER ${LANG_SWEDISH} "Fresh install for current user." + LangString MULTIUSER_INSTALLED_ALL_USERS ${LANG_SWEDISH} "Version {VERSION} is installed for all users in $\"{FOLDER}$\"." + LangString MULTIUSER_INSTALLED_CURRENT_USER ${LANG_SWEDISH} "Version {VERSION} is installed for current user in $\"{FOLDER}$\"." + LangString MULTIUSER_REINSTALL_SAME_VERSION_ALL_USERS ${LANG_SWEDISH} "Reinstall version {VERSION} for all users." + LangString MULTIUSER_REINSTALL_SAME_VERSION_CURRENT_USER ${LANG_SWEDISH} "Reinstall version {VERSION} for current user." + LangString MULTIUSER_REINSTALL_DIFF_VERSION_ALL_USERS ${LANG_SWEDISH} "Uninstall version {OLD_VERSION} and install version {VERSION} for all users." + LangString MULTIUSER_REINSTALL_DIFF_VERSION_CURRENT_USER ${LANG_SWEDISH} "Uninstall version {OLD_VERSION} and install version {VERSION} for current user." + LangString MULTIUSER_RUN_AS_ADMIN ${LANG_SWEDISH} "You need to run this program as administrator." + LangString MULTIUSER_ADMIN_CREDENTIALS_REQUIRED ${LANG_SWEDISH} "Administrator credentials required." + LangString MULTIUSER_ADMIN_UNINSTALL_CREDENTIALS_REQUIRED ${LANG_SWEDISH} "Administrator credentials required for uninstall." + ; error messages - not so important + LangString MULTIUSER_INVALID_PARAMS ${LANG_SWEDISH} "Invalid combination of paramaters." + LangString MULTIUSER_NOT_INSTALLED ${LANG_SWEDISH} "There is no installation of $(^NameDA)." + LangString MULTIUSER_INSTALLATION_FOR_CURRENT_USER_NOT_SUPPORTED ${LANG_SWEDISH} "The operating system doesn't support current user installations." + LangString MULTIUSER_ADMIN_ACCOUNT_LOGIN_REQUIRED ${LANG_SWEDISH} "You need to login with an account that is a member of the administrators group to continue." + LangString MULTIUSER_ELEVATION_NOT_SUPPORTED ${LANG_SWEDISH} "The operating system doesn't support elevation." + LangString MULTIUSER_LOGON_SERVICE_NOT_RUNNING ${LANG_SWEDISH} "Unable to elevate, Secondary Logon service not running." + LangString MULTIUSER_ELEVATION_ERROR ${LANG_SWEDISH} "Unable to elevate, error {ERROR}." +!endif + +!ifdef LANG_TATAR + LangString MULTIUSER_PAGE_TITLE ${LANG_TATAR} "Choose Users" + LangString MULTIUSER_INSTALL_PAGE_SUBTITLE ${LANG_TATAR} "Choose for which users to install $(^NameDA)." + LangString MULTIUSER_UNINSTALL_PAGE_SUBTITLE ${LANG_TATAR} "Choose for which users to remove $(^NameDA)." + LangString MULTIUSER_INSTALL_HEADER ${LANG_TATAR} "Select whether to install $(^NameDA) for all users or for current user." + LangString MULTIUSER_UNINSTALL_HEADER ${LANG_TATAR} "$(^NameDA) is installed both for all users and for current user.$\r$\nSelect which installation to remove." + LangString MULTIUSER_ALL_USERS ${LANG_TATAR} "For &anyone who uses this computer (all users)" + LangString MULTIUSER_CURRENT_USER ${LANG_TATAR} "For &me ({USER})" + LangString MULTIUSER_ALL_USERS_UMUI ${LANG_TATAR} "For anyone who uses this computer (all users)" + LangString MULTIUSER_CURRENT_USER_UMUI ${LANG_TATAR} "For me ({USER})" + LangString MULTIUSER_NEW_INSTALLATION_ALL_USERS ${LANG_TATAR} "Fresh install for all users." + LangString MULTIUSER_NEW_INSTALLATION_CURRENT_USER ${LANG_TATAR} "Fresh install for current user." + LangString MULTIUSER_INSTALLED_ALL_USERS ${LANG_TATAR} "Version {VERSION} is installed for all users in $\"{FOLDER}$\"." + LangString MULTIUSER_INSTALLED_CURRENT_USER ${LANG_TATAR} "Version {VERSION} is installed for current user in $\"{FOLDER}$\"." + LangString MULTIUSER_REINSTALL_SAME_VERSION_ALL_USERS ${LANG_TATAR} "Reinstall version {VERSION} for all users." + LangString MULTIUSER_REINSTALL_SAME_VERSION_CURRENT_USER ${LANG_TATAR} "Reinstall version {VERSION} for current user." + LangString MULTIUSER_REINSTALL_DIFF_VERSION_ALL_USERS ${LANG_TATAR} "Uninstall version {OLD_VERSION} and install version {VERSION} for all users." + LangString MULTIUSER_REINSTALL_DIFF_VERSION_CURRENT_USER ${LANG_TATAR} "Uninstall version {OLD_VERSION} and install version {VERSION} for current user." + LangString MULTIUSER_RUN_AS_ADMIN ${LANG_TATAR} "You need to run this program as administrator." + LangString MULTIUSER_ADMIN_CREDENTIALS_REQUIRED ${LANG_TATAR} "Administrator credentials required." + LangString MULTIUSER_ADMIN_UNINSTALL_CREDENTIALS_REQUIRED ${LANG_TATAR} "Administrator credentials required for uninstall." + ; error messages - not so important + LangString MULTIUSER_INVALID_PARAMS ${LANG_TATAR} "Invalid combination of paramaters." + LangString MULTIUSER_NOT_INSTALLED ${LANG_TATAR} "There is no installation of $(^NameDA)." + LangString MULTIUSER_INSTALLATION_FOR_CURRENT_USER_NOT_SUPPORTED ${LANG_TATAR} "The operating system doesn't support current user installations." + LangString MULTIUSER_ADMIN_ACCOUNT_LOGIN_REQUIRED ${LANG_TATAR} "You need to login with an account that is a member of the administrators group to continue." + LangString MULTIUSER_ELEVATION_NOT_SUPPORTED ${LANG_TATAR} "The operating system doesn't support elevation." + LangString MULTIUSER_LOGON_SERVICE_NOT_RUNNING ${LANG_TATAR} "Unable to elevate, Secondary Logon service not running." + LangString MULTIUSER_ELEVATION_ERROR ${LANG_TATAR} "Unable to elevate, error {ERROR}." +!endif + +!ifdef LANG_THAI + LangString MULTIUSER_PAGE_TITLE ${LANG_THAI} "Choose Users" + LangString MULTIUSER_INSTALL_PAGE_SUBTITLE ${LANG_THAI} "Choose for which users to install $(^NameDA)." + LangString MULTIUSER_UNINSTALL_PAGE_SUBTITLE ${LANG_THAI} "Choose for which users to remove $(^NameDA)." + LangString MULTIUSER_INSTALL_HEADER ${LANG_THAI} "Select whether to install $(^NameDA) for all users or for current user." + LangString MULTIUSER_UNINSTALL_HEADER ${LANG_THAI} "$(^NameDA) is installed both for all users and for current user.$\r$\nSelect which installation to remove." + LangString MULTIUSER_ALL_USERS ${LANG_THAI} "For &anyone who uses this computer (all users)" + LangString MULTIUSER_CURRENT_USER ${LANG_THAI} "For &me ({USER})" + LangString MULTIUSER_ALL_USERS_UMUI ${LANG_THAI} "For anyone who uses this computer (all users)" + LangString MULTIUSER_CURRENT_USER_UMUI ${LANG_THAI} "For me ({USER})" + LangString MULTIUSER_NEW_INSTALLATION_ALL_USERS ${LANG_THAI} "Fresh install for all users." + LangString MULTIUSER_NEW_INSTALLATION_CURRENT_USER ${LANG_THAI} "Fresh install for current user." + LangString MULTIUSER_INSTALLED_ALL_USERS ${LANG_THAI} "Version {VERSION} is installed for all users in $\"{FOLDER}$\"." + LangString MULTIUSER_INSTALLED_CURRENT_USER ${LANG_THAI} "Version {VERSION} is installed for current user in $\"{FOLDER}$\"." + LangString MULTIUSER_REINSTALL_SAME_VERSION_ALL_USERS ${LANG_THAI} "Reinstall version {VERSION} for all users." + LangString MULTIUSER_REINSTALL_SAME_VERSION_CURRENT_USER ${LANG_THAI} "Reinstall version {VERSION} for current user." + LangString MULTIUSER_REINSTALL_DIFF_VERSION_ALL_USERS ${LANG_THAI} "Uninstall version {OLD_VERSION} and install version {VERSION} for all users." + LangString MULTIUSER_REINSTALL_DIFF_VERSION_CURRENT_USER ${LANG_THAI} "Uninstall version {OLD_VERSION} and install version {VERSION} for current user." + LangString MULTIUSER_RUN_AS_ADMIN ${LANG_THAI} "You need to run this program as administrator." + LangString MULTIUSER_ADMIN_CREDENTIALS_REQUIRED ${LANG_THAI} "Administrator credentials required." + LangString MULTIUSER_ADMIN_UNINSTALL_CREDENTIALS_REQUIRED ${LANG_THAI} "Administrator credentials required for uninstall." + ; error messages - not so important + LangString MULTIUSER_INVALID_PARAMS ${LANG_THAI} "Invalid combination of paramaters." + LangString MULTIUSER_NOT_INSTALLED ${LANG_THAI} "There is no installation of $(^NameDA)." + LangString MULTIUSER_INSTALLATION_FOR_CURRENT_USER_NOT_SUPPORTED ${LANG_THAI} "The operating system doesn't support current user installations." + LangString MULTIUSER_ADMIN_ACCOUNT_LOGIN_REQUIRED ${LANG_THAI} "You need to login with an account that is a member of the administrators group to continue." + LangString MULTIUSER_ELEVATION_NOT_SUPPORTED ${LANG_THAI} "The operating system doesn't support elevation." + LangString MULTIUSER_LOGON_SERVICE_NOT_RUNNING ${LANG_THAI} "Unable to elevate, Secondary Logon service not running." + LangString MULTIUSER_ELEVATION_ERROR ${LANG_THAI} "Unable to elevate, error {ERROR}." +!endif + +!ifdef LANG_TRADCHINESE + LangString MULTIUSER_PAGE_TITLE ${LANG_TRADCHINESE} "Choose Users" + LangString MULTIUSER_INSTALL_PAGE_SUBTITLE ${LANG_TRADCHINESE} "Choose for which users to install $(^NameDA)." + LangString MULTIUSER_UNINSTALL_PAGE_SUBTITLE ${LANG_TRADCHINESE} "Choose for which users to remove $(^NameDA)." + LangString MULTIUSER_INSTALL_HEADER ${LANG_TRADCHINESE} "Select whether to install $(^NameDA) for all users or for current user." + LangString MULTIUSER_UNINSTALL_HEADER ${LANG_TRADCHINESE} "$(^NameDA) is installed both for all users and for current user.$\r$\nSelect which installation to remove." + LangString MULTIUSER_ALL_USERS ${LANG_TRADCHINESE} "For &anyone who uses this computer (all users)" + LangString MULTIUSER_CURRENT_USER ${LANG_TRADCHINESE} "For &me ({USER})" + LangString MULTIUSER_ALL_USERS_UMUI ${LANG_TRADCHINESE} "For anyone who uses this computer (all users)" + LangString MULTIUSER_CURRENT_USER_UMUI ${LANG_TRADCHINESE} "For me ({USER})" + LangString MULTIUSER_NEW_INSTALLATION_ALL_USERS ${LANG_TRADCHINESE} "Fresh install for all users." + LangString MULTIUSER_NEW_INSTALLATION_CURRENT_USER ${LANG_TRADCHINESE} "Fresh install for current user." + LangString MULTIUSER_INSTALLED_ALL_USERS ${LANG_TRADCHINESE} "Version {VERSION} is installed for all users in $\"{FOLDER}$\"." + LangString MULTIUSER_INSTALLED_CURRENT_USER ${LANG_TRADCHINESE} "Version {VERSION} is installed for current user in $\"{FOLDER}$\"." + LangString MULTIUSER_REINSTALL_SAME_VERSION_ALL_USERS ${LANG_TRADCHINESE} "Reinstall version {VERSION} for all users." + LangString MULTIUSER_REINSTALL_SAME_VERSION_CURRENT_USER ${LANG_TRADCHINESE} "Reinstall version {VERSION} for current user." + LangString MULTIUSER_REINSTALL_DIFF_VERSION_ALL_USERS ${LANG_TRADCHINESE} "Uninstall version {OLD_VERSION} and install version {VERSION} for all users." + LangString MULTIUSER_REINSTALL_DIFF_VERSION_CURRENT_USER ${LANG_TRADCHINESE} "Uninstall version {OLD_VERSION} and install version {VERSION} for current user." + LangString MULTIUSER_RUN_AS_ADMIN ${LANG_TRADCHINESE} "You need to run this program as administrator." + LangString MULTIUSER_ADMIN_CREDENTIALS_REQUIRED ${LANG_TRADCHINESE} "Administrator credentials required." + LangString MULTIUSER_ADMIN_UNINSTALL_CREDENTIALS_REQUIRED ${LANG_TRADCHINESE} "Administrator credentials required for uninstall." + ; error messages - not so important + LangString MULTIUSER_INVALID_PARAMS ${LANG_TRADCHINESE} "Invalid combination of paramaters." + LangString MULTIUSER_NOT_INSTALLED ${LANG_TRADCHINESE} "There is no installation of $(^NameDA)." + LangString MULTIUSER_INSTALLATION_FOR_CURRENT_USER_NOT_SUPPORTED ${LANG_TRADCHINESE} "The operating system doesn't support current user installations." + LangString MULTIUSER_ADMIN_ACCOUNT_LOGIN_REQUIRED ${LANG_TRADCHINESE} "You need to login with an account that is a member of the administrators group to continue." + LangString MULTIUSER_ELEVATION_NOT_SUPPORTED ${LANG_TRADCHINESE} "The operating system doesn't support elevation." + LangString MULTIUSER_LOGON_SERVICE_NOT_RUNNING ${LANG_TRADCHINESE} "Unable to elevate, Secondary Logon service not running." + LangString MULTIUSER_ELEVATION_ERROR ${LANG_TRADCHINESE} "Unable to elevate, error {ERROR}." +!endif + +!ifdef LANG_TURKISH + LangString MULTIUSER_PAGE_TITLE ${LANG_TURKISH} "Choose Users" + LangString MULTIUSER_INSTALL_PAGE_SUBTITLE ${LANG_TURKISH} "Choose for which users to install $(^NameDA)." + LangString MULTIUSER_UNINSTALL_PAGE_SUBTITLE ${LANG_TURKISH} "Choose for which users to remove $(^NameDA)." + LangString MULTIUSER_INSTALL_HEADER ${LANG_TURKISH} "Select whether to install $(^NameDA) for all users or for current user." + LangString MULTIUSER_UNINSTALL_HEADER ${LANG_TURKISH} "$(^NameDA) is installed both for all users and for current user.$\r$\nSelect which installation to remove." + LangString MULTIUSER_ALL_USERS ${LANG_TURKISH} "For &anyone who uses this computer (all users)" + LangString MULTIUSER_CURRENT_USER ${LANG_TURKISH} "For &me ({USER})" + LangString MULTIUSER_ALL_USERS_UMUI ${LANG_TURKISH} "For anyone who uses this computer (all users)" + LangString MULTIUSER_CURRENT_USER_UMUI ${LANG_TURKISH} "For me ({USER})" + LangString MULTIUSER_NEW_INSTALLATION_ALL_USERS ${LANG_TURKISH} "Fresh install for all users." + LangString MULTIUSER_NEW_INSTALLATION_CURRENT_USER ${LANG_TURKISH} "Fresh install for current user." + LangString MULTIUSER_INSTALLED_ALL_USERS ${LANG_TURKISH} "Version {VERSION} is installed for all users in $\"{FOLDER}$\"." + LangString MULTIUSER_INSTALLED_CURRENT_USER ${LANG_TURKISH} "Version {VERSION} is installed for current user in $\"{FOLDER}$\"." + LangString MULTIUSER_REINSTALL_SAME_VERSION_ALL_USERS ${LANG_TURKISH} "Reinstall version {VERSION} for all users." + LangString MULTIUSER_REINSTALL_SAME_VERSION_CURRENT_USER ${LANG_TURKISH} "Reinstall version {VERSION} for current user." + LangString MULTIUSER_REINSTALL_DIFF_VERSION_ALL_USERS ${LANG_TURKISH} "Uninstall version {OLD_VERSION} and install version {VERSION} for all users." + LangString MULTIUSER_REINSTALL_DIFF_VERSION_CURRENT_USER ${LANG_TURKISH} "Uninstall version {OLD_VERSION} and install version {VERSION} for current user." + LangString MULTIUSER_RUN_AS_ADMIN ${LANG_TURKISH} "You need to run this program as administrator." + LangString MULTIUSER_ADMIN_CREDENTIALS_REQUIRED ${LANG_TURKISH} "Administrator credentials required." + LangString MULTIUSER_ADMIN_UNINSTALL_CREDENTIALS_REQUIRED ${LANG_TURKISH} "Administrator credentials required for uninstall." + ; error messages - not so important + LangString MULTIUSER_INVALID_PARAMS ${LANG_TURKISH} "Invalid combination of paramaters." + LangString MULTIUSER_NOT_INSTALLED ${LANG_TURKISH} "There is no installation of $(^NameDA)." + LangString MULTIUSER_INSTALLATION_FOR_CURRENT_USER_NOT_SUPPORTED ${LANG_TURKISH} "The operating system doesn't support current user installations." + LangString MULTIUSER_ADMIN_ACCOUNT_LOGIN_REQUIRED ${LANG_TURKISH} "You need to login with an account that is a member of the administrators group to continue." + LangString MULTIUSER_ELEVATION_NOT_SUPPORTED ${LANG_TURKISH} "The operating system doesn't support elevation." + LangString MULTIUSER_LOGON_SERVICE_NOT_RUNNING ${LANG_TURKISH} "Unable to elevate, Secondary Logon service not running." + LangString MULTIUSER_ELEVATION_ERROR ${LANG_TURKISH} "Unable to elevate, error {ERROR}." +!endif + +!ifdef LANG_UKRAINIAN + LangString MULTIUSER_PAGE_TITLE ${LANG_UKRAINIAN} "Choose Users" + LangString MULTIUSER_INSTALL_PAGE_SUBTITLE ${LANG_UKRAINIAN} "Choose for which users to install $(^NameDA)." + LangString MULTIUSER_UNINSTALL_PAGE_SUBTITLE ${LANG_UKRAINIAN} "Choose for which users to remove $(^NameDA)." + LangString MULTIUSER_INSTALL_HEADER ${LANG_UKRAINIAN} "Select whether to install $(^NameDA) for all users or for current user." + LangString MULTIUSER_UNINSTALL_HEADER ${LANG_UKRAINIAN} "$(^NameDA) is installed both for all users and for current user.$\r$\nSelect which installation to remove." + LangString MULTIUSER_ALL_USERS ${LANG_UKRAINIAN} "For &anyone who uses this computer (all users)" + LangString MULTIUSER_CURRENT_USER ${LANG_UKRAINIAN} "For &me ({USER})" + LangString MULTIUSER_ALL_USERS_UMUI ${LANG_UKRAINIAN} "For anyone who uses this computer (all users)" + LangString MULTIUSER_CURRENT_USER_UMUI ${LANG_UKRAINIAN} "For me ({USER})" + LangString MULTIUSER_NEW_INSTALLATION_ALL_USERS ${LANG_UKRAINIAN} "Fresh install for all users." + LangString MULTIUSER_NEW_INSTALLATION_CURRENT_USER ${LANG_UKRAINIAN} "Fresh install for current user." + LangString MULTIUSER_INSTALLED_ALL_USERS ${LANG_UKRAINIAN} "Version {VERSION} is installed for all users in $\"{FOLDER}$\"." + LangString MULTIUSER_INSTALLED_CURRENT_USER ${LANG_UKRAINIAN} "Version {VERSION} is installed for current user in $\"{FOLDER}$\"." + LangString MULTIUSER_REINSTALL_SAME_VERSION_ALL_USERS ${LANG_UKRAINIAN} "Reinstall version {VERSION} for all users." + LangString MULTIUSER_REINSTALL_SAME_VERSION_CURRENT_USER ${LANG_UKRAINIAN} "Reinstall version {VERSION} for current user." + LangString MULTIUSER_REINSTALL_DIFF_VERSION_ALL_USERS ${LANG_UKRAINIAN} "Uninstall version {OLD_VERSION} and install version {VERSION} for all users." + LangString MULTIUSER_REINSTALL_DIFF_VERSION_CURRENT_USER ${LANG_UKRAINIAN} "Uninstall version {OLD_VERSION} and install version {VERSION} for current user." + LangString MULTIUSER_RUN_AS_ADMIN ${LANG_UKRAINIAN} "You need to run this program as administrator." + LangString MULTIUSER_ADMIN_CREDENTIALS_REQUIRED ${LANG_UKRAINIAN} "Administrator credentials required." + LangString MULTIUSER_ADMIN_UNINSTALL_CREDENTIALS_REQUIRED ${LANG_UKRAINIAN} "Administrator credentials required for uninstall." + ; error messages - not so important + LangString MULTIUSER_INVALID_PARAMS ${LANG_UKRAINIAN} "Invalid combination of paramaters." + LangString MULTIUSER_NOT_INSTALLED ${LANG_UKRAINIAN} "There is no installation of $(^NameDA)." + LangString MULTIUSER_INSTALLATION_FOR_CURRENT_USER_NOT_SUPPORTED ${LANG_UKRAINIAN} "The operating system doesn't support current user installations." + LangString MULTIUSER_ADMIN_ACCOUNT_LOGIN_REQUIRED ${LANG_UKRAINIAN} "You need to login with an account that is a member of the administrators group to continue." + LangString MULTIUSER_ELEVATION_NOT_SUPPORTED ${LANG_UKRAINIAN} "The operating system doesn't support elevation." + LangString MULTIUSER_LOGON_SERVICE_NOT_RUNNING ${LANG_UKRAINIAN} "Unable to elevate, Secondary Logon service not running." + LangString MULTIUSER_ELEVATION_ERROR ${LANG_UKRAINIAN} "Unable to elevate, error {ERROR}." +!endif + +!ifdef LANG_UZBEK + LangString MULTIUSER_PAGE_TITLE ${LANG_UZBEK} "Choose Users" + LangString MULTIUSER_INSTALL_PAGE_SUBTITLE ${LANG_UZBEK} "Choose for which users to install $(^NameDA)." + LangString MULTIUSER_UNINSTALL_PAGE_SUBTITLE ${LANG_UZBEK} "Choose for which users to remove $(^NameDA)." + LangString MULTIUSER_INSTALL_HEADER ${LANG_UZBEK} "Select whether to install $(^NameDA) for all users or for current user." + LangString MULTIUSER_UNINSTALL_HEADER ${LANG_UZBEK} "$(^NameDA) is installed both for all users and for current user.$\r$\nSelect which installation to remove." + LangString MULTIUSER_ALL_USERS ${LANG_UZBEK} "For &anyone who uses this computer (all users)" + LangString MULTIUSER_CURRENT_USER ${LANG_UZBEK} "For &me ({USER})" + LangString MULTIUSER_ALL_USERS_UMUI ${LANG_UZBEK} "For anyone who uses this computer (all users)" + LangString MULTIUSER_CURRENT_USER_UMUI ${LANG_UZBEK} "For me ({USER})" + LangString MULTIUSER_NEW_INSTALLATION_ALL_USERS ${LANG_UZBEK} "Fresh install for all users." + LangString MULTIUSER_NEW_INSTALLATION_CURRENT_USER ${LANG_UZBEK} "Fresh install for current user." + LangString MULTIUSER_INSTALLED_ALL_USERS ${LANG_UZBEK} "Version {VERSION} is installed for all users in $\"{FOLDER}$\"." + LangString MULTIUSER_INSTALLED_CURRENT_USER ${LANG_UZBEK} "Version {VERSION} is installed for current user in $\"{FOLDER}$\"." + LangString MULTIUSER_REINSTALL_SAME_VERSION_ALL_USERS ${LANG_UZBEK} "Reinstall version {VERSION} for all users." + LangString MULTIUSER_REINSTALL_SAME_VERSION_CURRENT_USER ${LANG_UZBEK} "Reinstall version {VERSION} for current user." + LangString MULTIUSER_REINSTALL_DIFF_VERSION_ALL_USERS ${LANG_UZBEK} "Uninstall version {OLD_VERSION} and install version {VERSION} for all users." + LangString MULTIUSER_REINSTALL_DIFF_VERSION_CURRENT_USER ${LANG_UZBEK} "Uninstall version {OLD_VERSION} and install version {VERSION} for current user." + LangString MULTIUSER_RUN_AS_ADMIN ${LANG_UZBEK} "You need to run this program as administrator." + LangString MULTIUSER_ADMIN_CREDENTIALS_REQUIRED ${LANG_UZBEK} "Administrator credentials required." + LangString MULTIUSER_ADMIN_UNINSTALL_CREDENTIALS_REQUIRED ${LANG_UZBEK} "Administrator credentials required for uninstall." + ; error messages - not so important + LangString MULTIUSER_INVALID_PARAMS ${LANG_UZBEK} "Invalid combination of paramaters." + LangString MULTIUSER_NOT_INSTALLED ${LANG_UZBEK} "There is no installation of $(^NameDA)." + LangString MULTIUSER_INSTALLATION_FOR_CURRENT_USER_NOT_SUPPORTED ${LANG_UZBEK} "The operating system doesn't support current user installations." + LangString MULTIUSER_ADMIN_ACCOUNT_LOGIN_REQUIRED ${LANG_UZBEK} "You need to login with an account that is a member of the administrators group to continue." + LangString MULTIUSER_ELEVATION_NOT_SUPPORTED ${LANG_UZBEK} "The operating system doesn't support elevation." + LangString MULTIUSER_LOGON_SERVICE_NOT_RUNNING ${LANG_UZBEK} "Unable to elevate, Secondary Logon service not running." + LangString MULTIUSER_ELEVATION_ERROR ${LANG_UZBEK} "Unable to elevate, error {ERROR}." +!endif + +!ifdef LANG_VIETNAMESE + LangString MULTIUSER_PAGE_TITLE ${LANG_VIETNAMESE} "Choose Users" + LangString MULTIUSER_INSTALL_PAGE_SUBTITLE ${LANG_VIETNAMESE} "Choose for which users to install $(^NameDA)." + LangString MULTIUSER_UNINSTALL_PAGE_SUBTITLE ${LANG_VIETNAMESE} "Choose for which users to remove $(^NameDA)." + LangString MULTIUSER_INSTALL_HEADER ${LANG_VIETNAMESE} "Select whether to install $(^NameDA) for all users or for current user." + LangString MULTIUSER_UNINSTALL_HEADER ${LANG_VIETNAMESE} "$(^NameDA) is installed both for all users and for current user.$\r$\nSelect which installation to remove." + LangString MULTIUSER_ALL_USERS ${LANG_VIETNAMESE} "For &anyone who uses this computer (all users)" + LangString MULTIUSER_CURRENT_USER ${LANG_VIETNAMESE} "For &me ({USER})" + LangString MULTIUSER_ALL_USERS_UMUI ${LANG_VIETNAMESE} "For anyone who uses this computer (all users)" + LangString MULTIUSER_CURRENT_USER_UMUI ${LANG_VIETNAMESE} "For me ({USER})" + LangString MULTIUSER_NEW_INSTALLATION_ALL_USERS ${LANG_VIETNAMESE} "Fresh install for all users." + LangString MULTIUSER_NEW_INSTALLATION_CURRENT_USER ${LANG_VIETNAMESE} "Fresh install for current user." + LangString MULTIUSER_INSTALLED_ALL_USERS ${LANG_VIETNAMESE} "Version {VERSION} is installed for all users in $\"{FOLDER}$\"." + LangString MULTIUSER_INSTALLED_CURRENT_USER ${LANG_VIETNAMESE} "Version {VERSION} is installed for current user in $\"{FOLDER}$\"." + LangString MULTIUSER_REINSTALL_SAME_VERSION_ALL_USERS ${LANG_VIETNAMESE} "Reinstall version {VERSION} for all users." + LangString MULTIUSER_REINSTALL_SAME_VERSION_CURRENT_USER ${LANG_VIETNAMESE} "Reinstall version {VERSION} for current user." + LangString MULTIUSER_REINSTALL_DIFF_VERSION_ALL_USERS ${LANG_VIETNAMESE} "Uninstall version {OLD_VERSION} and install version {VERSION} for all users." + LangString MULTIUSER_REINSTALL_DIFF_VERSION_CURRENT_USER ${LANG_VIETNAMESE} "Uninstall version {OLD_VERSION} and install version {VERSION} for current user." + LangString MULTIUSER_RUN_AS_ADMIN ${LANG_VIETNAMESE} "You need to run this program as administrator." + LangString MULTIUSER_ADMIN_CREDENTIALS_REQUIRED ${LANG_VIETNAMESE} "Administrator credentials required." + LangString MULTIUSER_ADMIN_UNINSTALL_CREDENTIALS_REQUIRED ${LANG_VIETNAMESE} "Administrator credentials required for uninstall." + ; error messages - not so important + LangString MULTIUSER_INVALID_PARAMS ${LANG_VIETNAMESE} "Invalid combination of paramaters." + LangString MULTIUSER_NOT_INSTALLED ${LANG_VIETNAMESE} "There is no installation of $(^NameDA)." + LangString MULTIUSER_INSTALLATION_FOR_CURRENT_USER_NOT_SUPPORTED ${LANG_VIETNAMESE} "The operating system doesn't support current user installations." + LangString MULTIUSER_ADMIN_ACCOUNT_LOGIN_REQUIRED ${LANG_VIETNAMESE} "You need to login with an account that is a member of the administrators group to continue." + LangString MULTIUSER_ELEVATION_NOT_SUPPORTED ${LANG_VIETNAMESE} "The operating system doesn't support elevation." + LangString MULTIUSER_LOGON_SERVICE_NOT_RUNNING ${LANG_VIETNAMESE} "Unable to elevate, Secondary Logon service not running." + LangString MULTIUSER_ELEVATION_ERROR ${LANG_VIETNAMESE} "Unable to elevate, error {ERROR}." +!endif + +!ifdef LANG_WELSH + LangString MULTIUSER_PAGE_TITLE ${LANG_WELSH} "Choose Users" + LangString MULTIUSER_INSTALL_PAGE_SUBTITLE ${LANG_WELSH} "Choose for which users to install $(^NameDA)." + LangString MULTIUSER_UNINSTALL_PAGE_SUBTITLE ${LANG_WELSH} "Choose for which users to remove $(^NameDA)." + LangString MULTIUSER_INSTALL_HEADER ${LANG_WELSH} "Select whether to install $(^NameDA) for all users or for current user." + LangString MULTIUSER_UNINSTALL_HEADER ${LANG_WELSH} "$(^NameDA) is installed both for all users and for current user.$\r$\nSelect which installation to remove." + LangString MULTIUSER_ALL_USERS ${LANG_WELSH} "For &anyone who uses this computer (all users)" + LangString MULTIUSER_CURRENT_USER ${LANG_WELSH} "For &me ({USER})" + LangString MULTIUSER_ALL_USERS_UMUI ${LANG_WELSH} "For anyone who uses this computer (all users)" + LangString MULTIUSER_CURRENT_USER_UMUI ${LANG_WELSH} "For me ({USER})" + LangString MULTIUSER_NEW_INSTALLATION_ALL_USERS ${LANG_WELSH} "Fresh install for all users." + LangString MULTIUSER_NEW_INSTALLATION_CURRENT_USER ${LANG_WELSH} "Fresh install for current user." + LangString MULTIUSER_INSTALLED_ALL_USERS ${LANG_WELSH} "Version {VERSION} is installed for all users in $\"{FOLDER}$\"." + LangString MULTIUSER_INSTALLED_CURRENT_USER ${LANG_WELSH} "Version {VERSION} is installed for current user in $\"{FOLDER}$\"." + LangString MULTIUSER_REINSTALL_SAME_VERSION_ALL_USERS ${LANG_WELSH} "Reinstall version {VERSION} for all users." + LangString MULTIUSER_REINSTALL_SAME_VERSION_CURRENT_USER ${LANG_WELSH} "Reinstall version {VERSION} for current user." + LangString MULTIUSER_REINSTALL_DIFF_VERSION_ALL_USERS ${LANG_WELSH} "Uninstall version {OLD_VERSION} and install version {VERSION} for all users." + LangString MULTIUSER_REINSTALL_DIFF_VERSION_CURRENT_USER ${LANG_WELSH} "Uninstall version {OLD_VERSION} and install version {VERSION} for current user." + LangString MULTIUSER_RUN_AS_ADMIN ${LANG_WELSH} "You need to run this program as administrator." + LangString MULTIUSER_ADMIN_CREDENTIALS_REQUIRED ${LANG_WELSH} "Administrator credentials required." + LangString MULTIUSER_ADMIN_UNINSTALL_CREDENTIALS_REQUIRED ${LANG_WELSH} "Administrator credentials required for uninstall." + ; error messages - not so important + LangString MULTIUSER_INVALID_PARAMS ${LANG_WELSH} "Invalid combination of paramaters." + LangString MULTIUSER_NOT_INSTALLED ${LANG_WELSH} "There is no installation of $(^NameDA)." + LangString MULTIUSER_INSTALLATION_FOR_CURRENT_USER_NOT_SUPPORTED ${LANG_WELSH} "The operating system doesn't support current user installations." + LangString MULTIUSER_ADMIN_ACCOUNT_LOGIN_REQUIRED ${LANG_WELSH} "You need to login with an account that is a member of the administrators group to continue." + LangString MULTIUSER_ELEVATION_NOT_SUPPORTED ${LANG_WELSH} "The operating system doesn't support elevation." + LangString MULTIUSER_LOGON_SERVICE_NOT_RUNNING ${LANG_WELSH} "Unable to elevate, Secondary Logon service not running." + LangString MULTIUSER_ELEVATION_ERROR ${LANG_WELSH} "Unable to elevate, error {ERROR}." +!endif diff --git a/make_binaries/assets-windows/NsisMultiUser/Include/StdUtils.nsh b/make_binaries/assets-windows/NsisMultiUser/Include/StdUtils.nsh new file mode 100644 index 00000000..7b72d302 --- /dev/null +++ b/make_binaries/assets-windows/NsisMultiUser/Include/StdUtils.nsh @@ -0,0 +1,501 @@ +################################################################################# +# StdUtils plug-in for NSIS +# Copyright (C) 2004-2018 LoRd_MuldeR +# +# This library is free software; you can redistribute it and/or +# modify it under the terms of the GNU Lesser General Public +# License as published by the Free Software Foundation; either +# version 2.1 of the License, or (at your option) any later version. +# +# This library is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# Lesser General Public License for more details. +# +# You should have received a copy of the GNU Lesser General Public +# License along with this library; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA +# +# http://www.gnu.org/licenses/lgpl-2.1.txt +################################################################################# + +# DEVELOPER NOTES: +# - Please see "https://github.com/lordmulder/stdutils/" for news and updates! +# - Please see "Docs\StdUtils\StdUtils.html" for detailed function descriptions! +# - Please see "Examples\StdUtils\StdUtilsTest.nsi" for usage examples! + +################################################################################# +# FUNCTION DECLARTIONS +################################################################################# + +!ifndef ___STDUTILS__NSH___ +!define ___STDUTILS__NSH___ + +!define StdUtils.Time '!insertmacro _StdU_Time' #time(), as in C standard library +!define StdUtils.GetMinutes '!insertmacro _StdU_GetMinutes' #GetSystemTimeAsFileTime(), returns the number of minutes +!define StdUtils.GetHours '!insertmacro _StdU_GetHours' #GetSystemTimeAsFileTime(), returns the number of hours +!define StdUtils.GetDays '!insertmacro _StdU_GetDays' #GetSystemTimeAsFileTime(), returns the number of days +!define StdUtils.Rand '!insertmacro _StdU_Rand' #rand(), as in C standard library +!define StdUtils.RandMax '!insertmacro _StdU_RandMax' #rand(), as in C standard library, with maximum value +!define StdUtils.RandMinMax '!insertmacro _StdU_RandMinMax' #rand(), as in C standard library, with minimum/maximum value +!define StdUtils.RandList '!insertmacro _StdU_RandList' #rand(), as in C standard library, with list support +!define StdUtils.RandBytes '!insertmacro _StdU_RandBytes' #Generates random bytes, returned as Base64-encoded string +!define StdUtils.FormatStr '!insertmacro _StdU_FormatStr' #sprintf(), as in C standard library, one '%d' placeholder +!define StdUtils.FormatStr2 '!insertmacro _StdU_FormatStr2' #sprintf(), as in C standard library, two '%d' placeholders +!define StdUtils.FormatStr3 '!insertmacro _StdU_FormatStr3' #sprintf(), as in C standard library, three '%d' placeholders +!define StdUtils.ScanStr '!insertmacro _StdU_ScanStr' #sscanf(), as in C standard library, one '%d' placeholder +!define StdUtils.ScanStr2 '!insertmacro _StdU_ScanStr2' #sscanf(), as in C standard library, two '%d' placeholders +!define StdUtils.ScanStr3 '!insertmacro _StdU_ScanStr3' #sscanf(), as in C standard library, three '%d' placeholders +!define StdUtils.TrimStr '!insertmacro _StdU_TrimStr' #Remove whitspaces from string, left and right +!define StdUtils.TrimStrLeft '!insertmacro _StdU_TrimStrLeft' #Remove whitspaces from string, left side only +!define StdUtils.TrimStrRight '!insertmacro _StdU_TrimStrRight' #Remove whitspaces from string, right side only +!define StdUtils.RevStr '!insertmacro _StdU_RevStr' #Reverse a string, e.g. "reverse me" <-> "em esrever" +!define StdUtils.ValidFileName '!insertmacro _StdU_ValidFileName' #Test whether string is a valid file name - no paths allowed +!define StdUtils.ValidPathSpec '!insertmacro _StdU_ValidPathSpec' #Test whether string is a valid full(!) path specification +!define StdUtils.ValidDomainName '!insertmacro _StdU_ValidDomain' #Test whether string is a valid host name or domain name +!define StdUtils.StrToUtf8 '!insertmacro _StdU_StrToUtf8' #Convert string from Unicode (UTF-16) or ANSI to UTF-8 bytes +!define StdUtils.StrFromUtf8 '!insertmacro _StdU_StrFromUtf8' #Convert string from UTF-8 bytes to Unicode (UTF-16) or ANSI +!define StdUtils.SHFileMove '!insertmacro _StdU_SHFileMove' #SHFileOperation(), using the FO_MOVE operation +!define StdUtils.SHFileCopy '!insertmacro _StdU_SHFileCopy' #SHFileOperation(), using the FO_COPY operation +!define StdUtils.AppendToFile '!insertmacro _StdU_AppendToFile' #Append contents of an existing file to another file +!define StdUtils.ExecShellAsUser '!insertmacro _StdU_ExecShlUser' #ShellExecute() as NON-elevated user from elevated installer +!define StdUtils.InvokeShellVerb '!insertmacro _StdU_InvkeShlVrb' #Invokes a "shell verb", e.g. for pinning items to the taskbar +!define StdUtils.ExecShellWaitEx '!insertmacro _StdU_ExecShlWaitEx' #ShellExecuteEx(), returns the handle of the new process +!define StdUtils.WaitForProcEx '!insertmacro _StdU_WaitForProcEx' #WaitForSingleObject(), e.g. to wait for a running process +!define StdUtils.GetParameter '!insertmacro _StdU_GetParameter' #Get the value of a specific command-line option +!define StdUtils.TestParameter '!insertmacro _StdU_TestParameter' #Test whether a specific command-line option has been set +!define StdUtils.ParameterCnt '!insertmacro _StdU_ParameterCnt' #Get number of command-line tokens, similar to argc in main() +!define StdUtils.ParameterStr '!insertmacro _StdU_ParameterStr' #Get the n-th command-line token, similar to argv[i] in main() +!define StdUtils.GetAllParameters '!insertmacro _StdU_GetAllParams' #Get complete command-line, but without executable name +!define StdUtils.GetRealOSVersion '!insertmacro _StdU_GetRealOSVer' #Get the *real* Windows version number, even on Windows 8.1+ +!define StdUtils.GetRealOSBuildNo '!insertmacro _StdU_GetRealOSBld' #Get the *real* Windows build number, even on Windows 8.1+ +!define StdUtils.GetRealOSName '!insertmacro _StdU_GetRealOSStr' #Get the *real* Windows version, as a "friendly" name +!define StdUtils.GetOSEdition '!insertmacro _StdU_GetOSEdition' #Get the Windows edition, i.e. "workstation" or "server" +!define StdUtils.GetOSReleaseId '!insertmacro _StdU_GetOSRelIdNo' #Get the Windows release identifier (on Windows 10) +!define StdUtils.GetOSReleaseName '!insertmacro _StdU_GetOSRelIdStr' #Get the Windows release (on Windows 10), as a "friendly" name +!define StdUtils.VerifyOSVersion '!insertmacro _StdU_VrfyRealOSVer' #Compare *real* operating system to an expected version number +!define StdUtils.VerifyOSBuildNo '!insertmacro _StdU_VrfyRealOSBld' #Compare *real* operating system to an expected build number +!define StdUtils.HashText '!insertmacro _StdU_HashText' #Compute hash from text string (CRC32, MD5, SHA1/2/3, BLAKE2) +!define StdUtils.HashFile '!insertmacro _StdU_HashFile' #Compute hash from file (CRC32, MD5, SHA1/2/3, BLAKE2) +!define StdUtils.NormalizePath '!insertmacro _StdU_NormalizePath' #Simplifies the path to produce a direct, well-formed path +!define StdUtils.GetParentPath '!insertmacro _StdU_GetParentPath' #Get parent path by removing the last component from the path +!define StdUtils.SplitPath '!insertmacro _StdU_SplitPath' #Split the components of the given path +!define StdUtils.GetDrivePart '!insertmacro _StdU_GetDrivePart' #Get drive component of path +!define StdUtils.GetDirectoryPart '!insertmacro _StdU_GetDirPart' #Get directory component of path +!define StdUtils.GetFileNamePart '!insertmacro _StdU_GetFNamePart' #Get file name component of path +!define StdUtils.GetExtensionPart '!insertmacro _StdU_GetExtnPart' #Get file extension component of path +!define StdUtils.TimerCreate '!insertmacro _StdU_TimerCreate' #Create a new event-timer that will be triggered periodically +!define StdUtils.TimerDestroy '!insertmacro _StdU_TimerDestroy' #Destroy a running timer created with TimerCreate() +!define StdUtils.ProtectStr '!insertmacro _StdU_PrtctStr' #Protect a given String using Windows' DPAPI +!define StdUtils.UnprotectStr '!insertmacro _StdU_UnprtctStr' #Unprotect a string that was protected via ProtectStr() +!define StdUtils.GetLibVersion '!insertmacro _StdU_GetLibVersion' #Get the current StdUtils library version (for debugging) +!define StdUtils.SetVerbose '!insertmacro _StdU_SetVerbose' #Enable or disable "verbose" mode (for debugging) + + +################################################################################# +# MACRO DEFINITIONS +################################################################################# + +!macro _StdU_Time out + StdUtils::Time /NOUNLOAD + pop ${out} +!macroend + +!macro _StdU_GetMinutes out + StdUtils::GetMinutes /NOUNLOAD + pop ${out} +!macroend + +!macro _StdU_GetHours out + StdUtils::GetHours /NOUNLOAD + pop ${out} +!macroend + +!macro _StdU_GetDays out + StdUtils::GetDays /NOUNLOAD + pop ${out} +!macroend + +!macro _StdU_Rand out + StdUtils::Rand /NOUNLOAD + pop ${out} +!macroend + +!macro _StdU_RandMax out max + push ${max} + StdUtils::RandMax /NOUNLOAD + pop ${out} +!macroend + +!macro _StdU_RandMinMax out min max + push ${min} + push ${max} + StdUtils::RandMinMax /NOUNLOAD + pop ${out} +!macroend + +!macro _StdU_RandList count max + push ${max} + push ${count} + StdUtils::RandList /NOUNLOAD +!macroend + +!macro _StdU_RandBytes out count + push ${count} + StdUtils::RandBytes /NOUNLOAD + pop ${out} +!macroend + +!macro _StdU_FormatStr out format val + push `${format}` + push ${val} + StdUtils::FormatStr /NOUNLOAD + pop ${out} +!macroend + +!macro _StdU_FormatStr2 out format val1 val2 + push `${format}` + push ${val1} + push ${val2} + StdUtils::FormatStr2 /NOUNLOAD + pop ${out} +!macroend + +!macro _StdU_FormatStr3 out format val1 val2 val3 + push `${format}` + push ${val1} + push ${val2} + push ${val3} + StdUtils::FormatStr3 /NOUNLOAD + pop ${out} +!macroend + +!macro _StdU_ScanStr out format input default + push `${format}` + push `${input}` + push ${default} + StdUtils::ScanStr /NOUNLOAD + pop ${out} +!macroend + +!macro _StdU_ScanStr2 out1 out2 format input default1 default2 + push `${format}` + push `${input}` + push ${default1} + push ${default2} + StdUtils::ScanStr2 /NOUNLOAD + pop ${out1} + pop ${out2} +!macroend + +!macro _StdU_ScanStr3 out1 out2 out3 format input default1 default2 default3 + push `${format}` + push `${input}` + push ${default1} + push ${default2} + push ${default3} + StdUtils::ScanStr3 /NOUNLOAD + pop ${out1} + pop ${out2} + pop ${out3} +!macroend + +!macro _StdU_TrimStr var + push ${var} + StdUtils::TrimStr /NOUNLOAD + pop ${var} +!macroend + +!macro _StdU_TrimStrLeft var + push ${var} + StdUtils::TrimStrLeft /NOUNLOAD + pop ${var} +!macroend + +!macro _StdU_TrimStrRight var + push ${var} + StdUtils::TrimStrRight /NOUNLOAD + pop ${var} +!macroend + +!macro _StdU_RevStr var + push ${var} + StdUtils::RevStr /NOUNLOAD + pop ${var} +!macroend + +!macro _StdU_ValidFileName out test + push `${test}` + StdUtils::ValidFileName /NOUNLOAD + pop ${out} +!macroend + +!macro _StdU_ValidPathSpec out test + push `${test}` + StdUtils::ValidPathSpec /NOUNLOAD + pop ${out} +!macroend + +!macro _StdU_ValidDomain out test + push `${test}` + StdUtils::ValidDomainName /NOUNLOAD + pop ${out} +!macroend + + +!macro _StdU_StrToUtf8 out str + push `${str}` + StdUtils::StrToUtf8 /NOUNLOAD + pop ${out} +!macroend + +!macro _StdU_StrFromUtf8 out trnc str + push ${trnc} + push `${str}` + StdUtils::StrFromUtf8 /NOUNLOAD + pop ${out} +!macroend + +!macro _StdU_SHFileMove out from to hwnd + push `${from}` + push `${to}` + push ${hwnd} + StdUtils::SHFileMove /NOUNLOAD + pop ${out} +!macroend + +!macro _StdU_SHFileCopy out from to hwnd + push `${from}` + push `${to}` + push ${hwnd} + StdUtils::SHFileCopy /NOUNLOAD + pop ${out} +!macroend + +!macro _StdU_AppendToFile out from dest offset maxlen + push `${from}` + push `${dest}` + push ${offset} + push ${maxlen} + StdUtils::AppendToFile /NOUNLOAD + pop ${out} +!macroend + +!macro _StdU_ExecShlUser out file verb args + push `${file}` + push `${verb}` + push `${args}` + StdUtils::ExecShellAsUser /NOUNLOAD + pop ${out} +!macroend + +!macro _StdU_InvkeShlVrb out path file verb_id + push "${path}" + push "${file}" + push ${verb_id} + StdUtils::InvokeShellVerb /NOUNLOAD + pop ${out} +!macroend + +!macro _StdU_ExecShlWaitEx out_res out_val file verb args + push `${file}` + push `${verb}` + push `${args}` + StdUtils::ExecShellWaitEx /NOUNLOAD + pop ${out_res} + pop ${out_val} +!macroend + +!macro _StdU_WaitForProcEx out handle + push `${handle}` + StdUtils::WaitForProcEx /NOUNLOAD + pop ${out} +!macroend + +!macro _StdU_GetParameter out name default + push `${name}` + push `${default}` + StdUtils::GetParameter /NOUNLOAD + pop ${out} +!macroend + +!macro _StdU_TestParameter out name + push `${name}` + StdUtils::TestParameter /NOUNLOAD + pop ${out} +!macroend + +!macro _StdU_ParameterCnt out + StdUtils::ParameterCnt /NOUNLOAD + pop ${out} +!macroend + +!macro _StdU_ParameterStr out index + push ${index} + StdUtils::ParameterStr /NOUNLOAD + pop ${out} +!macroend + +!macro _StdU_GetAllParams out truncate + push `${truncate}` + StdUtils::GetAllParameters /NOUNLOAD + pop ${out} +!macroend + +!macro _StdU_GetRealOSVer out_major out_minor out_spack + StdUtils::GetRealOsVersion /NOUNLOAD + pop ${out_major} + pop ${out_minor} + pop ${out_spack} +!macroend + +!macro _StdU_GetRealOSBld out + StdUtils::GetRealOsBuildNo /NOUNLOAD + pop ${out} +!macroend + +!macro _StdU_GetRealOSStr out + StdUtils::GetRealOsName /NOUNLOAD + pop ${out} +!macroend + +!macro _StdU_VrfyRealOSVer out major minor spack + push `${major}` + push `${minor}` + push `${spack}` + StdUtils::VerifyRealOsVersion /NOUNLOAD + pop ${out} +!macroend + +!macro _StdU_VrfyRealOSBld out build + push `${build}` + StdUtils::VerifyRealOsBuildNo /NOUNLOAD + pop ${out} +!macroend + +!macro _StdU_GetOSEdition out + StdUtils::GetOsEdition /NOUNLOAD + pop ${out} +!macroend + +!macro _StdU_GetOSRelIdNo out + StdUtils::GetOsReleaseId /NOUNLOAD + pop ${out} +!macroend + +!macro _StdU_GetOSRelIdStr out + StdUtils::GetOsReleaseName /NOUNLOAD + pop ${out} +!macroend + +!macro _StdU_HashText out type text + push `${type}` + push `${text}` + StdUtils::HashText /NOUNLOAD + pop ${out} +!macroend + +!macro _StdU_HashFile out type file + push `${type}` + push `${file}` + StdUtils::HashFile /NOUNLOAD + pop ${out} +!macroend + +!macro _StdU_NormalizePath out path + push `${path}` + StdUtils::NormalizePath /NOUNLOAD + pop ${out} +!macroend + +!macro _StdU_GetParentPath out path + push `${path}` + StdUtils::GetParentPath /NOUNLOAD + pop ${out} +!macroend + +!macro _StdU_SplitPath out_drive out_dir out_fname out_ext path + push `${path}` + StdUtils::SplitPath /NOUNLOAD + pop ${out_drive} + pop ${out_dir} + pop ${out_fname} + pop ${out_ext} +!macroend + +!macro _StdU_GetDrivePart out path + push `${path}` + StdUtils::GetDrivePart /NOUNLOAD + pop ${out} +!macroend + +!macro _StdU_GetDirPart out path + push `${path}` + StdUtils::GetDirectoryPart /NOUNLOAD + pop ${out} +!macroend + +!macro _StdU_GetFNamePart out path + push `${path}` + StdUtils::GetFileNamePart /NOUNLOAD + pop ${out} +!macroend + +!macro _StdU_GetExtnPart out path + push `${path}` + StdUtils::GetExtensionPart /NOUNLOAD + pop ${out} +!macroend + +!macro _StdU_TimerCreate out callback interval + GetFunctionAddress ${out} ${callback} + push ${out} + push ${interval} + StdUtils::TimerCreate /NOUNLOAD + pop ${out} +!macroend + +!macro _StdU_TimerDestroy out timer_id + push ${timer_id} + StdUtils::TimerDestroy /NOUNLOAD + pop ${out} +!macroend + +!macro _StdU_PrtctStr out dpsc salt text + push `${dpsc}` + push `${salt}` + push `${text}` + StdUtils::ProtectStr /NOUNLOAD + pop ${out} +!macroend + +!macro _StdU_UnprtctStr out trnc salt data + push `${trnc}` + push `${salt}` + push `${data}` + StdUtils::UnprotectStr /NOUNLOAD + pop ${out} +!macroend + +!macro _StdU_GetLibVersion out_ver out_tst + StdUtils::GetLibVersion /NOUNLOAD + pop ${out_ver} + pop ${out_tst} +!macroend + +!macro _StdU_SetVerbose enable + Push ${enable} + StdUtils::SetVerboseMode /NOUNLOAD +!macroend + + +################################################################################# +# MAGIC NUMBERS +################################################################################# + +!define StdUtils.Const.ShellVerb.PinToTaskbar 0 +!define StdUtils.Const.ShellVerb.UnpinFromTaskbar 1 +!define StdUtils.Const.ShellVerb.PinToStart 2 +!define StdUtils.Const.ShellVerb.UnpinFromStart 3 + +!endif # !___STDUTILS__NSH___ diff --git a/make_binaries/assets-windows/NsisMultiUser/Include/UAC.nsh b/make_binaries/assets-windows/NsisMultiUser/Include/UAC.nsh new file mode 100644 index 00000000..e2684da4 --- /dev/null +++ b/make_binaries/assets-windows/NsisMultiUser/Include/UAC.nsh @@ -0,0 +1,299 @@ +/*** UAC Plug-in *** + +Interactive User (MediumIL) Admin user (HighIL) +***[Setup.exe]************* ***[Setup.exe]************** +* * * * +* +++[.OnInit]+++++++++++ * * +++[.OnInit]++++++++++++ * +* + UAC_RunElevated >---+-+----> * + + * +* + NSIS.Quit + * * + + * +* +++++++++++++++++++++++ * * ++++++++++++++++++++++++ * +* * * * +* * * * +* +++[Section]+++++++++++ * * +++[Section]++++++++++++ * +* + + * /--+-+- +** +** Get integrity level of current process +** +**/ +!macro UAC_GetIntegrityLevel outvar +UAC::_ 6 +!if "${outvar}" != "s" + Pop ${outvar} +!endif +!macroend + + + +/* UAC_IsAdmin +** +** Is the current process running with administrator privileges? Result in $0 +** +** ${If} ${UAC_IsAdmin} ... +** +**/ +!macro UAC_IsAdmin +UAC::_ 2 +!macroend +!define UAC_IsAdmin `"" UAC_IsAdmin ""` +!macro _UAC_IsAdmin _a _b _t _f +!insertmacro _UAC_MakeLL_Cmp _!= 0 2s +!macroend + + + +/* UAC_IsInnerInstance +** +** Does the current process have a NSIS/UAC parent process that is part of the elevation operation? +** +** ${If} ${UAC_IsInnerInstance} ... +** +**/ +!macro UAC_IsInnerInstance +UAC::_ 3 +!macroend +!define UAC_IsInnerInstance `"" UAC_IsInnerInstance ""` +!macro _UAC_IsInnerInstance _a _b _t _f +!insertmacro _UAC_MakeLL_Cmp _!= 0 3s +!macroend + + + +/* UAC_PageElevation_OnInit, UAC_PageElevation_OnGuiInit, +** +** Helper macros for elevation on a custom elevation page, see the DualMode example for more information. +** +**/ +!macro UAC_Notify_OnGuiInit +UAC::_ 4 +!macroend +!macro UAC_PageElevation_OnGuiInit +!insertmacro UAC_Notify_OnGuiInit +!macroend +!macro UAC_PageElevation_OnInit +UAC::_ 5 +${IfThen} ${Errors} ${|} Quit ${|} +!macroend + + + +/* UAC_AsUser_Call +** +** Calls a function or label in the user process instance. +** All the UAC_AsUser_* macros use this helper macro. +** +**/ +!define UAC_SYNCREGISTERS 0x1 +;define UAC_SYNCSTACK 0x2 +!define UAC_SYNCOUTDIR 0x4 +!define UAC_SYNCINSTDIR 0x8 +;define UAC_CLEARERRFLAG 0x10 +!macro UAC_AsUser_Call type name flags +push $0 +Get${type}Address $0 ${name} +!verbose push +!verbose ${UAC_VERBOSE} +!insertmacro _UAC_ParseDefineFlagsToInt _UAC_AsUser_Call__flags ${flags} +!verbose pop +StrCpy $0 "1$0:${_UAC_AsUser_Call__flags}" +!undef _UAC_AsUser_Call__flags +Exch $0 +UAC::_ +!macroend + + + +/* +** UAC_AsUser_GetSection +*/ +!macro UAC_AsUser_GetSection secprop secidx outvar +!insertmacro _UAC_AsUser_GenOp ${outvar} SectionGet${secprop} ${secidx} "" +!macroend + + + +/* +** UAC_AsUser_GetGlobalVar +** UAC_AsUser_GetGlobal +*/ +!macro UAC_AsUser_GetGlobalVar var +!insertmacro _UAC_AsUser_GenOp ${var} StrCpy "" ${var} +!macroend +!macro UAC_AsUser_GetGlobal outvar srcvar +!insertmacro _UAC_AsUser_GenOp ${outvar} StrCpy "" ${srcvar} +!macroend + + + +/* +** UAC_AsUser_ExecShell +** +** Call ExecShell in the user process instance. +** +*/ +!macro UAC_AsUser_ExecShell verb command params workdir show +!insertmacro _UAC_IncL +goto _UAC_L_E_${__UAC_L} +_UAC_L_F_${__UAC_L}: +ExecShell "${verb}" "${command}" '${params}' ${show} +return +_UAC_L_E_${__UAC_L}: +!if "${workdir}" != "" + push $outdir + SetOutPath "${workdir}" +!endif +!insertmacro UAC_AsUser_Call Label _UAC_L_F_${__UAC_L} ${UAC_SYNCREGISTERS}|${UAC_SYNCOUTDIR}|${UAC_SYNCINSTDIR} #|${UAC_CLEARERRFLAG} +!if "${workdir}" != "" + pop $outdir + SetOutPath $outdir +!endif +!macroend + + + +!macro _UAC_MakeLL_Cmp cmpop cmp pluginparams +!insertmacro _LOGICLIB_TEMP +UAC::_ ${pluginparams} +pop $_LOGICLIB_TEMP +!insertmacro ${cmpop} $_LOGICLIB_TEMP ${cmp} `${_t}` `${_f}` +!macroend +!macro _UAC_definemath def val1 op val2 +!define /math _UAC_definemath "${val1}" ${op} ${val2} +!ifdef ${def} + !undef ${def} +!endif +!define ${def} "${_UAC_definemath}" +!undef _UAC_definemath +!macroend +!macro _UAC_ParseDefineFlags_orin parse outflags +!searchparse /noerrors ${${parse}} "" _UAC_ParseDefineFlags_orin_f1 "|" _UAC_ParseDefineFlags_orin_f2 +!define _UAC_ParseDefineFlags_orin_this ${_UAC_ParseDefineFlags_orin_f1} +!undef ${parse} +!define ${parse} ${_UAC_ParseDefineFlags_orin_f2} +!define _UAC_ParseDefineFlags_orin_saveout ${${outflags}} +!undef ${outflags} +!define /math ${outflags} "${_UAC_ParseDefineFlags_orin_saveout}" | "${_UAC_ParseDefineFlags_orin_this}" +!undef _UAC_ParseDefineFlags_orin_saveout +!undef _UAC_ParseDefineFlags_orin_this +!ifdef _UAC_ParseDefineFlags_orin_f1 + !undef _UAC_ParseDefineFlags_orin_f1 +!endif +!ifdef _UAC_ParseDefineFlags_orin_f2 + !undef _UAC_ParseDefineFlags_orin_f2 +!endif +!macroend +!macro _UAC_ParseDefineFlags_Begin _outdef _in +!define _UAC_PDF${_outdef}_parse "${_in}" +!define _UAC_PDF${_outdef}_flags "" +!define _UAC_PDF${_outdef}_r 0 +!insertmacro _UAC_ParseDefineFlags_orin _UAC_PDF${_outdef}_parse _UAC_PDF${_outdef}_flags ;0x1 +!insertmacro _UAC_ParseDefineFlags_orin _UAC_PDF${_outdef}_parse _UAC_PDF${_outdef}_flags ;0x2 +!insertmacro _UAC_ParseDefineFlags_orin _UAC_PDF${_outdef}_parse _UAC_PDF${_outdef}_flags ;0x4 +!insertmacro _UAC_ParseDefineFlags_orin _UAC_PDF${_outdef}_parse _UAC_PDF${_outdef}_flags ;0x8 +!insertmacro _UAC_ParseDefineFlags_orin _UAC_PDF${_outdef}_parse _UAC_PDF${_outdef}_flags ;0x10 +!macroend +!macro _UAC_ParseDefineFlags_End _outdef +!define ${_outdef} ${_UAC_PDF${_outdef}_r} +!undef _UAC_PDF${_outdef}_r +!undef _UAC_PDF${_outdef}_flags +!undef _UAC_PDF${_outdef}_parse +!macroend +!macro _UAC_ParseDefineFlags_IncludeFlag _outdef flag +!if ${_UAC_PDF${_outdef}_flags} & ${flag} + !insertmacro _UAC_definemath _UAC_PDF${_outdef}_r ${_UAC_PDF${_outdef}_r} | ${flag} +!endif +!macroend +!macro _UAC_ParseDefineFlagsToInt _outdef _in +!insertmacro _UAC_ParseDefineFlags_Begin _UAC_ParseDefineFlagsToInt_tmp "${_in}" +!define ${_outdef} ${_UAC_PDF_UAC_ParseDefineFlagsToInt_tmp_flags} +!insertmacro _UAC_ParseDefineFlags_End _UAC_ParseDefineFlagsToInt_tmp +!undef _UAC_ParseDefineFlagsToInt_tmp +!macroend +!macro _UAC_IncL +!insertmacro _UAC_definemath __UAC_L "${__UAC_L}" + 1 +!macroend +!macro _UAC_AsUser_GenOp outvar op opparam1 opparam2 +!define _UAC_AUGOGR_ID _UAC_AUGOGR_OP${outvar}${op}${opparam1}${opparam2} +!ifndef ${_UAC_AUGOGR_ID} ;Has this exact action been done before? + !if ${outvar} == $0 + !define ${_UAC_AUGOGR_ID} $1 + !else + !define ${_UAC_AUGOGR_ID} $0 + !endif + !if "${opparam1}" == "" + !define _UAC_AUGOGR_OPP1 ${${_UAC_AUGOGR_ID}} + !define _UAC_AUGOGR_OPP2 ${opparam2} + !else + !define _UAC_AUGOGR_OPP1 ${opparam1} + !define _UAC_AUGOGR_OPP2 ${${_UAC_AUGOGR_ID}} + !endif + goto ${_UAC_AUGOGR_ID}_C + ${_UAC_AUGOGR_ID}_F: + ${op} ${_UAC_AUGOGR_OPP1} ${_UAC_AUGOGR_OPP2} + return + ${_UAC_AUGOGR_ID}_C: + !undef _UAC_AUGOGR_OPP1 + !undef _UAC_AUGOGR_OPP2 +!endif +push ${${_UAC_AUGOGR_ID}} +!insertmacro UAC_AsUser_Call Label ${_UAC_AUGOGR_ID}_F ${UAC_SYNCREGISTERS} +StrCpy ${outvar} ${${_UAC_AUGOGR_ID}} +pop ${${_UAC_AUGOGR_ID}} +!undef _UAC_AUGOGR_ID +!macroend + + + +!verbose pop +!endif /* UAC_HDR__INC */ \ No newline at end of file diff --git a/make_binaries/assets-windows/NsisMultiUser/Plugins/x86-ansi/StdUtils.dll b/make_binaries/assets-windows/NsisMultiUser/Plugins/x86-ansi/StdUtils.dll new file mode 100644 index 00000000..5317b6d4 Binary files /dev/null and b/make_binaries/assets-windows/NsisMultiUser/Plugins/x86-ansi/StdUtils.dll differ diff --git a/make_binaries/assets-windows/NsisMultiUser/Plugins/x86-ansi/UAC.dll b/make_binaries/assets-windows/NsisMultiUser/Plugins/x86-ansi/UAC.dll new file mode 100644 index 00000000..57a58c53 Binary files /dev/null and b/make_binaries/assets-windows/NsisMultiUser/Plugins/x86-ansi/UAC.dll differ diff --git a/make_binaries/assets-windows/NsisMultiUser/Plugins/x86-unicode/StdUtils.dll b/make_binaries/assets-windows/NsisMultiUser/Plugins/x86-unicode/StdUtils.dll new file mode 100644 index 00000000..6c852f4c Binary files /dev/null and b/make_binaries/assets-windows/NsisMultiUser/Plugins/x86-unicode/StdUtils.dll differ diff --git a/make_binaries/assets-windows/NsisMultiUser/Plugins/x86-unicode/UAC.dll b/make_binaries/assets-windows/NsisMultiUser/Plugins/x86-unicode/UAC.dll new file mode 100644 index 00000000..97e7d15e Binary files /dev/null and b/make_binaries/assets-windows/NsisMultiUser/Plugins/x86-unicode/UAC.dll differ diff --git a/make_binaries/assets-windows/Uninstall.nsh b/make_binaries/assets-windows/Uninstall.nsh new file mode 100644 index 00000000..dcbba928 --- /dev/null +++ b/make_binaries/assets-windows/Uninstall.nsh @@ -0,0 +1,143 @@ +!include un.Utils.nsh + +; Variables +Var SemiSilentMode ; installer started uninstaller in semi-silent mode using /SS parameter +Var RunningFromInstaller ; installer started uninstaller using /uninstall parameter +Var RunningAsShellUser ; uninstaller restarted itself under the user of the running shell + +Section "un.Program Files" SectionUninstallProgram + SectionIn RO + + !insertmacro MULTIUSER_GetCurrentUserString $0 + + ; InvokeShellVerb only works on existing files, so we call it before deleting the EXE, https://github.com/lordmulder/stdutils/issues/22 + + ; Clean up "Start Menu Icon" + ${if} ${AtLeastWin7} + ${StdUtils.InvokeShellVerb} $1 "$INSTDIR" "${PROGEXE}" ${StdUtils.Const.ShellVerb.UnpinFromStart} + ${else} + !insertmacro DeleteRetryAbort "$STARTMENU\${PRODUCT_NAME}$0.lnk" + ${endif} + + ; Clean up "Quick Launch Icon" + ${if} ${AtLeastWin7} + ${StdUtils.InvokeShellVerb} $1 "$INSTDIR" "${PROGEXE}" ${StdUtils.Const.ShellVerb.UnpinFromTaskbar} + ${else} + !insertmacro DeleteRetryAbort "$QUICKLAUNCH\${PRODUCT_NAME}.lnk" + ${endif} + + ; Try to delete the EXE as the first step - if it's in use, don't remove anything else + !insertmacro DeleteRetryAbort "$INSTDIR\${PROGEXE}" + !ifdef LICENSE_FILE + !insertmacro DeleteRetryAbort "$INSTDIR\${LICENSE_FILE}" + !endif + + ; Clean up "Documentation" + !insertmacro DeleteRetryAbort "$INSTDIR\readme.txt" + + ; Clean up "Program Group" + RMDir /r "$SMPROGRAMS\${PRODUCT_NAME}$0" + + ; Clean up "Desktop Icon" + !insertmacro DeleteRetryAbort "$DESKTOP\${PRODUCT_NAME}$0.lnk" +SectionEnd + +Section /o "un.Program Settings" SectionRemoveSettings + ; this section is executed only explicitly and shouldn't be placed in SectionUninstallProgram + DeleteRegKey HKCU "Software\${PRODUCT_NAME}" +SectionEnd + +Section "-Uninstall" ; hidden section, must always be the last one! + Delete "$INSTDIR\${UNINSTALL_FILENAME}" ; we cannot use un.DeleteRetryAbort here - when using the _? parameter the uninstaller cannot delete itself and Delete fails, which is OK + ; remove the directory only if it is empty - the user might have saved some files in it + RMDir "$INSTDIR" + + ; Remove the uninstaller from registry as the very last step - if sth. goes wrong, let the user run it again + !insertmacro MULTIUSER_RegistryRemoveInstallInfo ; Remove registry keys + + ; If the uninstaller still exists, use cmd.exe on exit to remove it (along with $INSTDIR if it's empty) + ${if} ${FileExists} "$INSTDIR\${UNINSTALL_FILENAME}" + Exec 'cmd.exe /c (del /f /q "$INSTDIR\${UNINSTALL_FILENAME}") && (rmdir "$INSTDIR")' + ${endif} +SectionEnd + +; Callbacks +Function un.onInit + ${GetParameters} $R0 + + ${GetOptions} $R0 "/uninstall" $R1 + ${ifnot} ${errors} + StrCpy $RunningFromInstaller 1 + ${else} + StrCpy $RunningFromInstaller 0 + ${endif} + + ${GetOptions} $R0 "/SS" $R1 + ${ifnot} ${errors} + StrCpy $SemiSilentMode 1 + StrCpy $RunningFromInstaller 1 + SetAutoClose true ; auto close (if no errors) if we are called from the installer; if there are errors, will be automatically set to false + ${else} + StrCpy $SemiSilentMode 0 + ${endif} + + ${GetOptions} $R0 "/shelluser" $R1 + ${ifnot} ${errors} + StrCpy $RunningAsShellUser 1 + ${else} + StrCpy $RunningAsShellUser 0 + ${endif} + + ${ifnot} ${UAC_IsInnerInstance} + ${andif} $RunningFromInstaller = 0 + ; Restarting the uninstaller using the user of the running shell, in order to overcome the Windows bugs that: + ; - Elevates the uninstallers of single-user installations when called from 'Apps & features' of Windows 10 + ; causing them to fail when using a different account for elevation. + ; - Elevates the uninstallers of all-users installations when called from 'Add/Remove Programs' of Control Panel, + ; preventing them of eleveting on their own and correctly recognize the user that started the uninstaller. If a + ; different account was used for elevation, all user-context operations will be performed for the user of that + ; account. In this case, the fix causes the elevetion prompt to be displayed twice (one from Control Panel and + ; one from the uninstaller). + ${if} ${UAC_IsAdmin} + ${andif} $RunningAsShellUser = 0 + ${StdUtils.ExecShellAsUser} $0 "$INSTDIR\${UNINSTALL_FILENAME}" "open" "/shelluser $R0" + Quit + ${endif} + !insertmacro CheckSingleInstance "Setup" "Global" "${SETUP_MUTEX}" + !insertmacro CheckSingleInstance "Application" "Local" "${APP_MUTEX}" + ${endif} + + !insertmacro MULTIUSER_UNINIT + + #!insertmacro LANGDLL_DISPLAY ; we always get the language, since the outer and inner instance might have different language +FunctionEnd + +# Function un.EmptyCallback +# FunctionEnd +# +# Function un.PageComponentsPre +# ${if} $SemiSilentMode = 1 +# Abort ; if user is installing, no use to remove program settings anyway (should be compatible with all versions) +# ${endif} +# FunctionEnd +# +# Function un.PageComponentsShow +# ; Show/hide the Back button +# GetDlgItem $0 $HWNDPARENT 3 +# ShowWindow $0 $UninstallShowBackButton +# FunctionEnd + +Function un.onUserAbort + MessageBox MB_YESNO|MB_ICONEXCLAMATION "Are you sure you want to quit $(^Name) Uninstall?" IDYES mui.quit + + Abort + mui.quit: +FunctionEnd + +Function un.onUninstFailed + ${if} $SemiSilentMode = 0 + MessageBox MB_ICONSTOP "${PRODUCT_NAME} ${VERSION} could not be fully uninstalled.$\r$\nPlease, restart Windows and run the uninstaller again." /SD IDOK + ${else} + MessageBox MB_ICONSTOP "${PRODUCT_NAME} could not be fully installed.$\r$\nPlease, restart Windows and run the setup program again." /SD IDOK + ${endif} +FunctionEnd diff --git a/make_binaries/assets-windows/UninstallPages.nsh b/make_binaries/assets-windows/UninstallPages.nsh new file mode 100644 index 00000000..95c829b9 --- /dev/null +++ b/make_binaries/assets-windows/UninstallPages.nsh @@ -0,0 +1,10 @@ +; Installer Attributes + +#ShowUninstDetails show + +; Pages +!insertmacro MULTIUSER_UNPAGE_INSTALLMODE + +#UninstPage components un.PageComponentsPre un.PageComponentsShow un.EmptyCallback + +UninstPage instfiles diff --git a/make_binaries/base64 b/make_binaries/base64 deleted file mode 100644 index 11909d31..00000000 --- a/make_binaries/base64 +++ /dev/null @@ -1 +0,0 @@ -adf adsf diff --git a/make_binaries/build b/make_binaries/build index afed9306..ce4cab6d 100755 --- a/make_binaries/build +++ b/make_binaries/build @@ -175,11 +175,11 @@ # Clean old builds - rm -r /Users/jan/Documents/Projects/Pragma-git/dist/Pragma-git-* - rm -r /Users/jan/Documents/Projects/Pragma-git/dist/mac - rm -r /Users/jan/Documents/Projects/Pragma-git/dist/mac_arm64 - rm -r /Users/jan/Documents/Projects/Pragma-git/dist/win64 - rm -r /Users/jan/Documents/Projects/Pragma-git/dist/linux64 + rm -rf /Users/jan/Documents/Projects/Pragma-git/dist/Pragma-git-* + rm -rf /Users/jan/Documents/Projects/Pragma-git/dist/mac + rm -rf /Users/jan/Documents/Projects/Pragma-git/dist/mac_arm64 + rm -rf /Users/jan/Documents/Projects/Pragma-git/dist/win64 + rm -rf /Users/jan/Documents/Projects/Pragma-git/dist/linux64 echo 'done' @@ -423,7 +423,6 @@ -DEXEFOLDER=$DIR \ -DOUTPUT="win64/$DIR.exe" \ -DVERSION="$(echo $DIR | cut -d '-' -f 3)" \ - -DPROGRAMFILESFOLDER='$PROGRAMFILES64' \ windows_installer.nsi \ || WIN_EXIT=$? diff --git a/make_binaries/release_to_github b/make_binaries/release_to_github index 21f52aca..0ba663d7 100755 --- a/make_binaries/release_to_github +++ b/make_binaries/release_to_github @@ -10,15 +10,7 @@ # Changes section : read -r -d '' CHANGES << --- -* Settings -- add more information in System Info tab -* Pragma-merge -- show if executable bit differs(uncommitted, and history) -* Settings -- get correct global author info checkbox when opening -* Pragma-merge -- determine language from shebang, if unknown extension -* Alerts -- fix bug closing alert -* Settings -- clone getting upstream (of forked repo) using scripts in 'apis_github_and_others/' -* Installer linux -- add dependencies: libatomic1, git -* Main -- starting first time, setting author and email dialog -* Fix bug -- external dialog input fields could not be written +* Windows installer, choise for single user and multi user installation --- # diff --git a/make_binaries/windows_installer.nsi b/make_binaries/windows_installer.nsi index 97b64a0b..48f876dc 100644 --- a/make_binaries/windows_installer.nsi +++ b/make_binaries/windows_installer.nsi @@ -1,97 +1,286 @@ -!include "MUI2.nsh" - -Unicode True - -Name "Pragma-git" -BrandingText "Jan Axelsson" - -# Taken from: NSIS Installation Script created by NSIS Quick Setup Script Generator v1.09.18 -!define APP_NAME "Pragma-git" -!define COMP_NAME "Jan Axelsson" -!define WEB_SITE "http://www.dicom2usb.com" -!define COPYRIGHT "Author © 2020" -!define DESCRIPTION "Application" -!define INSTALLER_NAME "C:\Users\jan\Desktop\Nsisqssg\Output\${APP_NAME}\setup.exe" -!define MAIN_APP_EXE "${APP_NAME}.exe" -!define INSTALL_TYPE "SetShellVarContext current" -!define REG_ROOT "HKCU" -!define REG_APP_PATH "Software\Microsoft\Windows\CurrentVersion\App Paths\${MAIN_APP_EXE}" -!define UNINSTALL_PATH "Software\Microsoft\Windows\CurrentVersion\Uninstall\${APP_NAME}" - - -# set the icon -!define MUI_ICON "../images/icon_installer.ico" - -# define the resulting installer's name: -OutFile ..\dist\${OUTPUT} - -# set the installation directory -#InstallDir "$PROGRAMFILES64\${APP_NAME}\" -InstallDir "${PROGRAMFILESFOLDER}\${APP_NAME}\" - -# app dialogs -!insertmacro MUI_PAGE_WELCOME -!insertmacro MUI_PAGE_INSTFILES - -!define MUI_FINISHPAGE_RUN_TEXT "Start ${APP_NAME}" - -#http://mdb-blog.blogspot.com/2013/01/nsis-lunch-program-as-user-from-uac.html -!define MUI_FINISHPAGE_RUN "$WINDIR\explorer.exe" -!define MUI_FINISHPAGE_RUN_PARAMETERS "$INSTDIR\${MAIN_APP_EXE}" -#!define MUI_FINISHPAGE_RUN "$INSTDIR\${MAIN_APP_EXE}" - -!insertmacro MUI_PAGE_FINISH -!insertmacro MUI_LANGUAGE "English" - -# default section start -Section - - # delete the installed files - RMDir /r $INSTDIR - - # define the path to which the installer should install - SetOutPath $INSTDIR - - # specify the files to go in the output path - File /r ..\dist\${EXEFOLDER}\* - - # create the uninstaller - WriteUninstaller "$INSTDIR\Uninstall ${MAIN_APP_EXE}" - - # create shortcuts in the start menu and on the desktop - CreateShortCut "$SMPROGRAMS\${APP_NAME}.lnk" "$INSTDIR\${MAIN_APP_EXE}" - #CreateShortCut "$SMPROGRAMS\Uninstall ${APP_NAME}.lnk" "$INSTDIR\Uninstall ${MAIN_APP_EXE}" - CreateShortCut "$DESKTOP\${APP_NAME}.lnk" "$INSTDIR\${MAIN_APP_EXE}" - - - # REGISTRY SETTINGS - - WriteRegStr ${REG_ROOT} "${REG_APP_PATH}" "" "$INSTDIR\${MAIN_APP_EXE}" - WriteRegStr ${REG_ROOT} "${UNINSTALL_PATH}" "DisplayName" "${APP_NAME}" - WriteRegStr ${REG_ROOT} "${UNINSTALL_PATH}" "UninstallString" "$INSTDIR\Uninstall ${MAIN_APP_EXE}" - WriteRegStr ${REG_ROOT} "${UNINSTALL_PATH}" "DisplayIcon" "$INSTDIR\${MAIN_APP_EXE}" - WriteRegStr ${REG_ROOT} "${UNINSTALL_PATH}" "DisplayVersion" "${VERSION}" - WriteRegStr ${REG_ROOT} "${UNINSTALL_PATH}" "Publisher" "${COMP_NAME}" - - - -SectionEnd - - -# =================================================== -# create a section to define what the uninstaller does -Section "Uninstall" - - # delete the installed files - RMDir /r $INSTDIR - - # delete the shortcuts - Delete "$SMPROGRAMS\${APP_NAME}.lnk" - Delete "$SMPROGRAMS\Uninstall ${APP_NAME}.lnk" - Delete "$DESKTOP\${APP_NAME}.lnk" - - # REGISTRY SETTINGS - DeleteRegKey ${REG_ROOT} "${REG_APP_PATH}" - DeleteRegKey ${REG_ROOT} "${UNINSTALL_PATH}" - -SectionEnd +; +; Multi/single user install, modified from https://github.com/Drizin/NsisMultiUser +; +; +!addplugindir /x86-ansi ".\assets-windows\NsisMultiUser\Plugins\x86-ansi" +!addplugindir /x86-unicode ".\assets-windows\NsisMultiUser\Plugins\x86-unicode" +!addincludedir ".\assets-windows\NsisMultiUser\Include" +!addincludedir ".\assets-windows\NsisMultiUser\Common" +!addincludedir ".\assets-windows" + +!include UAC.nsh +!include NsisMultiUser.nsh +!include LogicLib.nsh +!include StdUtils.nsh + +; ------------------------------------------------------------------------ +; Installer defines +; ------------------------------------------------------------------------ +!define PRODUCT_NAME "Pragma-git" ; name of the application as displayed to the user +!define PROGEXE "Pragma-git.exe" ; main application filename +!define COMPANY_NAME "Jan Axelsson" ; company, used for registry tree hierarchy +!define CONTACT "pragmagit@gmail.com" ; stored as the contact information in the uninstall info of the registry + +!define COMMENTS "NsisMultiUser NSIS Full Demo, based on the NSIS built-in pages" ; stored as comments in the uninstall info of the registry +!define URL_INFO_ABOUT "https://github.com/Drizin/NsisMultiUser/tree/master/Demos/NSIS_Full" ; stored as the Support Link in the uninstall info of the registry, and when not included, the Help Link as well +!define URL_HELP_LINK "https://github.com/Drizin/NsisMultiUser/wiki" ; stored as the Help Link in the uninstall info of the registry +!define URL_UPDATE_INFO "https://github.com/Drizin/NsisMultiUser" ; stored as the Update Information in the uninstall info of the registry + +!define PLATFORM "Win64" +!define MIN_WIN_VER "XP" +!define SETUP_MUTEX "${COMPANY_NAME} ${PRODUCT_NAME} Setup Mutex" ; do not change this between program versions! +!define APP_MUTEX "${COMPANY_NAME} ${PRODUCT_NAME} App Mutex" ; do not change this between program versions! +!define SETTINGS_REG_KEY "Software\Microsoft\Windows\CurrentVersion\Uninstall\${PRODUCT_NAME}" +;!define LICENSE_FILE "License.txt" ; license file, optional + +; ------------------------------------------------------------------------ +; NsisMultiUser optional defines +; ------------------------------------------------------------------------ +!define MULTIUSER_INSTALLMODE_ALLOW_BOTH_INSTALLATIONS 0 +!define MULTIUSER_INSTALLMODE_ALLOW_ELEVATION 1 +!define MULTIUSER_INSTALLMODE_ALLOW_ELEVATION_IF_SILENT 1 ; required for silent-mode allusers-uninstall to work, when using the workaround for Windows elevation bug +!define MULTIUSER_INSTALLMODE_DEFAULT_ALLUSERS 1 + +!if ${PLATFORM} == "Win64" + !define MULTIUSER_INSTALLMODE_64_BIT 1 +!endif +!define MULTIUSER_INSTALLMODE_DISPLAYNAME "${PRODUCT_NAME} ${VERSION} ${PLATFORM}" + +; ------------------------------------------------------------------------ +; Installer Attributes +; ------------------------------------------------------------------------ +Name "${PRODUCT_NAME} v${VERSION} ${PLATFORM}" +OutFile ..\dist\${OUTPUT} +BrandingText '©2020 ${COMPANY_NAME}' + +AllowSkipFiles off +SetOverwrite on ; (default setting) set to on except for where it is manually switched off +ShowInstDetails show +Unicode true ; properly display all languages (Installer will not work on Windows 95, 98 or ME!) +#SetCompressor /SOLID lzma +XPStyle on + +# define the resulting installer's name: +!include Utils.nsh + +!insertmacro MULTIUSER_PAGE_INSTALLMODE + + +PageEx instfiles + PageCallbacks PageInstFilesPre EmptyCallback EmptyCallback +PageExEnd + +; SIGNING -- remove next line if you're using signing after the uninstaller is extracted from the initially compiled setup +!include UninstallPages.nsh + +; Languages (first alphabetical is default language) - must be inserted after all pages +LoadLanguageFile "${NSISDIR}\Contrib\Language files\English.nlf" +!insertmacro MULTIUSER_LANGUAGE_INIT + +; Reserve files +ReserveFile /plugin LangDLL.dll + +; ------------------------------------------------------------------------ +; Functions +; ------------------------------------------------------------------------ +Function CheckInstallation + ; if there's an installed version, uninstall it first (I chose not to start the uninstaller silently, so that user sees what failed) + ; if both per-user and per-machine versions are installed, unistall the one that matches $MultiUser.InstallMode + StrCpy $0 "" + ${if} $HasCurrentModeInstallation = 1 + StrCpy $0 "$MultiUser.InstallMode" + ${else} + !if ${MULTIUSER_INSTALLMODE_ALLOW_BOTH_INSTALLATIONS} = 0 + ${if} $HasPerMachineInstallation = 1 + StrCpy $0 "AllUsers" ; if there's no per-user installation, but there's per-machine installation, uninstall it + ${elseif} $HasPerUserInstallation = 1 + StrCpy $0 "CurrentUser" ; if there's no per-machine installation, but there's per-user installation, uninstall it + ${endif} + !endif + ${endif} + + ${if} "$0" != "" + ${if} $0 == "AllUsers" + StrCpy $1 "$PerMachineUninstallString" + StrCpy $3 "$PerMachineInstallationFolder" + ${else} + StrCpy $1 "$PerUserUninstallString" + StrCpy $3 "$PerUserInstallationFolder" + ${endif} + ${if} ${silent} + StrCpy $2 "/S" + ${else} + StrCpy $2 "" + ${endif} + ${endif} +FunctionEnd + +Function RunUninstaller + StrCpy $0 0 + ExecWait '$1 /SS $2 _?=$3' $0 ; $1 is quoted in registry; the _? param stops the uninstaller from copying itself to the temporary directory, which is the only way for ExecWait to work +FunctionEnd + + +; ------------------------------------------------------------------------ +; Sections +; ------------------------------------------------------------------------ +InstType "Typical" +InstType "Minimal" +InstType "Full" + + +Section "Core Files (required)" SectionCoreFiles + SectionIn 1 2 3 RO + + !insertmacro UAC_AsUser_Call Function CheckInstallation ${UAC_SYNCREGISTERS} + ${if} $0 != "" + HideWindow + ClearErrors + ${if} $0 == "AllUsers" + Call RunUninstaller + ${else} + !insertmacro UAC_AsUser_Call Function RunUninstaller ${UAC_SYNCREGISTERS} + ${endif} + ${if} ${errors} ; stay in installer + SetErrorLevel 2 ; Installation aborted by script + BringToFront + Abort "Error executing uninstaller." + ${else} + ${Switch} $0 + ${Case} 0 ; uninstaller completed successfully - continue with installation + BringToFront + Sleep 1000 ; wait for cmd.exe (called by the uninstaller) to finish + ${Break} + ${Case} 1 ; Installation aborted by user (cancel button) + ${Case} 2 ; Installation aborted by script + SetErrorLevel $0 + Quit ; uninstaller was started, but completed with errors - Quit installer + ${Default} ; all other error codes - uninstaller could not start, elevate, etc. - Abort installer + SetErrorLevel $0 + BringToFront + Abort "Error executing uninstaller." + ${EndSwitch} + ${endif} + + ; Just a failsafe - should've been taken care of by cmd.exe + !insertmacro DeleteRetryAbort "$3\${UNINSTALL_FILENAME}" ; the uninstaller doesn't delete itself when not copied to the temp directory + RMDir "$3" + ${endif} + + SetOutPath $INSTDIR + ; Write uninstaller and registry uninstall info as the first step, + ; so that the user has the option to run the uninstaller if sth. goes wrong + WriteUninstaller "${UNINSTALL_FILENAME}" + ; SIGNING -- or this if you're using signing: + ; File "${UNINSTALL_FILENAME}" + + !insertmacro MULTIUSER_RegistryAddInstallInfo ; add registry keys + + # specify the files to go in the output path + File /r ..\dist\${EXEFOLDER}\* + +SectionEnd + + +SectionGroup /e "Integration" SectionGroupIntegration + + + Section "Program Group" SectionProgramGroup + SectionIn 1 3 + + !insertmacro MULTIUSER_GetCurrentUserString $0 + CreateDirectory "$SMPROGRAMS\${PRODUCT_NAME}$0" + CreateShortCut "$SMPROGRAMS\${PRODUCT_NAME}$0\${PRODUCT_NAME}.lnk" "$INSTDIR\${PROGEXE}" + + !ifdef LICENSE_FILE + CreateShortCut "$SMPROGRAMS\${PRODUCT_NAME}$0\License Agreement.lnk" "$INSTDIR\${LICENSE_FILE}" + !endif + ${if} $MultiUser.InstallMode == "AllUsers" + CreateShortCut "$SMPROGRAMS\${PRODUCT_NAME}$0\Uninstall.lnk" "$INSTDIR\${UNINSTALL_FILENAME}" "/allusers" + ${else} + CreateShortCut "$SMPROGRAMS\${PRODUCT_NAME}$0\Uninstall.lnk" "$INSTDIR\${UNINSTALL_FILENAME}" "/currentuser" + ${endif} + SectionEnd + + + Section "Desktop Icon" SectionDesktopIcon + SectionIn 1 3 + + !insertmacro MULTIUSER_GetCurrentUserString $0 + CreateShortCut "$DESKTOP\${PRODUCT_NAME}$0.lnk" "$INSTDIR\${PROGEXE}" + SectionEnd + + + Section /o "Start Menu Icon" SectionStartMenuIcon + SectionIn 3 + + ${if} ${AtLeastWin7} + ${StdUtils.InvokeShellVerb} $0 "$INSTDIR" "${PROGEXE}" ${StdUtils.Const.ShellVerb.PinToStart} + ${else} + !insertmacro MULTIUSER_GetCurrentUserString $0 + CreateShortCut "$STARTMENU\${PRODUCT_NAME}$0.lnk" "$INSTDIR\${PROGEXE}" + ${endif} + SectionEnd + + + + Section /o "Quick Launch Icon" SectionQuickLaunchIcon + SectionIn 3 + + ${if} ${AtLeastWin7} + ${StdUtils.InvokeShellVerb} $0 "$INSTDIR" "${PROGEXE}" ${StdUtils.Const.ShellVerb.PinToTaskbar} + ${else} + ; The $QUICKLAUNCH folder is always only for the current user + CreateShortCut "$QUICKLAUNCH\${PRODUCT_NAME}.lnk" "$INSTDIR\${PROGEXE}" + ${endif} + SectionEnd +SectionGroupEnd + + +Section "-Write Install Size" ; hidden section, write install size as the final step + !insertmacro MULTIUSER_RegistryAddInstallSizeInfo +SectionEnd + + +; ------------------------------------------------------------------------ +; Callbacks +; ------------------------------------------------------------------------ +Function .onInit + !insertmacro CheckPlatform ${PLATFORM} + !insertmacro CheckMinWinVer ${MIN_WIN_VER} + ${ifnot} ${UAC_IsInnerInstance} + !insertmacro CheckSingleInstance "Setup" "Global" "${SETUP_MUTEX}" + !insertmacro CheckSingleInstance "Application" "Local" "${APP_MUTEX}" + ${endif} + + !insertmacro MULTIUSER_INIT +FunctionEnd + + +Function EmptyCallback +FunctionEnd + + +Function PageInstFilesPre + GetDlgItem $0 $HWNDPARENT 1 + SendMessage $0 ${BCM_SETSHIELD} 0 0 ; hide SHIELD (Windows Vista and above) +FunctionEnd + + +Function .onUserAbort + MessageBox MB_YESNO|MB_ICONEXCLAMATION "Are you sure you want to quit $(^Name) Setup?" IDYES mui.quit + + Abort + mui.quit: +FunctionEnd + + +Function .onInstFailed + MessageBox MB_ICONSTOP "${PRODUCT_NAME} ${VERSION} could not be fully installed.$\r$\nPlease, restart Windows and run the setup program again." /SD IDOK +FunctionEnd + + +; ------------------------------------------------------------------------ +; SIGNING -- remove next line if you're using signing after the uninstaller is extracted from the initially compiled setup +; ------------------------------------------------------------------------ +!include Uninstall.nsh diff --git a/package-lock.json b/package-lock.json index 35a09d9b..2bb8b3b5 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "Pragma-git", - "version": "0.9.15", + "version": "0.9.16", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "Pragma-git", - "version": "0.9.15", + "version": "0.9.16", "license": "MIT", "dependencies": { "@toast-ui/editor": "3.0", diff --git a/package.json b/package.json index 9486b758..b359bb5c 100644 --- a/package.json +++ b/package.json @@ -1,5 +1,5 @@ { - "version": "0.9.15", + "version": "0.9.16", "name": "Pragma-git", "description": "The pragmatic git client", "main": "app.html",