aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSean Hall <r.sean.hall@gmail.com>2020-05-23 16:22:44 +1000
committerSean Hall <r.sean.hall@gmail.com>2020-05-23 16:26:20 +1000
commit259c6b7420c5e95258f563eca14859a182ffe76a (patch)
tree90ced1d5d2524a8be23ca02db3e78a24a0ac924e
parent513286d4798572cc82a78554ef15ef2fe79f407e (diff)
downloadwix-259c6b7420c5e95258f563eca14859a182ffe76a.tar.gz
wix-259c6b7420c5e95258f563eca14859a182ffe76a.tar.bz2
wix-259c6b7420c5e95258f563eca14859a182ffe76a.zip
Add WindowsBuildNumber variable which is set to dwBuildNumber from RtlGetVersion()
-rw-r--r--src/engine/variable.cpp5
1 files changed, 5 insertions, 0 deletions
diff --git a/src/engine/variable.cpp b/src/engine/variable.cpp
index dc5a569a..6322942e 100644
--- a/src/engine/variable.cpp
+++ b/src/engine/variable.cpp
@@ -36,6 +36,7 @@ enum OS_INFO_VARIABLE
36 OS_INFO_VARIABLE_CompatibilityMode, 36 OS_INFO_VARIABLE_CompatibilityMode,
37 OS_INFO_VARIABLE_TerminalServer, 37 OS_INFO_VARIABLE_TerminalServer,
38 OS_INFO_VARIABLE_ProcessorArchitecture, 38 OS_INFO_VARIABLE_ProcessorArchitecture,
39 OS_INFO_VARIABLE_WindowsBuildNumber,
39}; 40};
40 41
41enum SET_VARIABLE 42enum SET_VARIABLE
@@ -253,6 +254,7 @@ extern "C" HRESULT VariableInitialize(
253 {L"VersionMsi", InitializeVariableVersionMsi, 0}, 254 {L"VersionMsi", InitializeVariableVersionMsi, 0},
254 {L"VersionNT", InitializeVariableVersionNT, OS_INFO_VARIABLE_VersionNT}, 255 {L"VersionNT", InitializeVariableVersionNT, OS_INFO_VARIABLE_VersionNT},
255 {L"VersionNT64", InitializeVariableVersionNT, OS_INFO_VARIABLE_VersionNT64}, 256 {L"VersionNT64", InitializeVariableVersionNT, OS_INFO_VARIABLE_VersionNT64},
257 {L"WindowsBuildNumber", InitializeVariableVersionNT, OS_INFO_VARIABLE_WindowsBuildNumber},
256 {L"WindowsFolder", InitializeVariableCsidlFolder, CSIDL_WINDOWS}, 258 {L"WindowsFolder", InitializeVariableCsidlFolder, CSIDL_WINDOWS},
257 {L"WindowsVolume", InitializeVariableWindowsVolumeFolder, 0}, 259 {L"WindowsVolume", InitializeVariableWindowsVolumeFolder, 0},
258 {BURN_BUNDLE_ACTION, InitializeVariableNumeric, 0, FALSE, TRUE}, 260 {BURN_BUNDLE_ACTION, InitializeVariableNumeric, 0, FALSE, TRUE},
@@ -1680,6 +1682,9 @@ static HRESULT InitializeVariableVersionNT(
1680 } 1682 }
1681 } 1683 }
1682 break; 1684 break;
1685 case OS_INFO_VARIABLE_WindowsBuildNumber:
1686 value.qwValue = static_cast<DWORD64>(ovix.dwBuildNumber);
1687 value.Type = BURN_VARIANT_TYPE_NUMERIC;
1683 default: 1688 default:
1684 AssertSz(FALSE, "Unknown OS info type."); 1689 AssertSz(FALSE, "Unknown OS info type.");
1685 break; 1690 break;