bring back WinVerGetMajor, WinVerGetMinor and WinVerGetBuild

git-svn-id: https://svn.code.sf.net/p/nsis/code/NSIS/trunk@5808 212acab6-be3b-0410-9dea-997c60f758d6
This commit is contained in:
kichik 2008-11-29 21:15:01 +00:00
parent f1cd865190
commit 9ac4ab0891

View file

@ -100,7 +100,7 @@
# masks for our variables
!define _WINVER_VERXBIT 0x00000001
!define _WINVER_MASKVMAJ 0xFF000000
!define _WINVER_MASKVMAJ 0x7F000000
!define _WINVER_MASKVMIN 0x00FF0000
!define _WINVER_NTBIT 0x80000000
@ -447,6 +447,26 @@
!define OSHasMediaCenter `${SM_MEDIACENTER} WinVer_SysMetricCheck ""`
!define OSHasTabletSupport `${SM_TABLETPC} WinVer_SysMetricCheck ""`
# version retrieval macros
!macro __WinVer_GetVer var rshift mask outvar
${CallArtificialFunction} __WinVer_InitVars
!if "${mask}" != ""
IntOp ${outvar} ${var} & ${mask}
!if "${rshift}" != ""
IntOp ${outvar} ${outvar} >> ${rshift}
!endif
!else
IntOp ${outvar} ${var} >> ${rshift}
!endif
!macroend
!define WinVerGetMajor '!insertmacro __WinVer_GetVer $__WINVERV 24 ${_WINVER_MASKVMAJ}'
!define WinVerGetMinor '!insertmacro __WinVer_GetVer $__WINVERV 16 ${_WINVER_MASKVMIN}'
!define WinVerGetBuild '!insertmacro __WinVer_GetVer $__WINVERSP "" ${_WINVER_MASKVBLD}'
# done
!endif # !___WINVER__NSH___
!verbose pop