diff options
| author | Eric StJohn <ericstj@microsoft.com> | 2021-08-30 15:26:42 -0700 |
|---|---|---|
| committer | Eric StJohn <ericstj@microsoft.com> | 2021-08-30 15:26:42 -0700 |
| commit | 495370ff9311d406da9c043cd208ce836a0303ff (patch) | |
| tree | ac5aa19b393dce498ad1938a0ce7410eceff93ba /src/burn/engine/variable.cpp | |
| parent | a4dc574fa13d828614058906c4e99fcb45965fe5 (diff) | |
| download | wix-495370ff9311d406da9c043cd208ce836a0303ff.tar.gz wix-495370ff9311d406da9c043cd208ce836a0303ff.tar.bz2 wix-495370ff9311d406da9c043cd208ce836a0303ff.zip | |
Add NativeMachine to Burn and WIX_NATIVE_MACHINE to UtilExtension
Diffstat (limited to 'src/burn/engine/variable.cpp')
| -rw-r--r-- | src/burn/engine/variable.cpp | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/src/burn/engine/variable.cpp b/src/burn/engine/variable.cpp index e7391a9f..e81704ce 100644 --- a/src/burn/engine/variable.cpp +++ b/src/burn/engine/variable.cpp | |||
| @@ -97,6 +97,10 @@ static HRESULT InitializeVariableVersionNT( | |||
| 97 | __in DWORD_PTR dwpData, | 97 | __in DWORD_PTR dwpData, |
| 98 | __inout BURN_VARIANT* pValue | 98 | __inout BURN_VARIANT* pValue |
| 99 | ); | 99 | ); |
| 100 | static HRESULT InitializeVariableNativeMachine( | ||
| 101 | __in DWORD_PTR dwpData, | ||
| 102 | __inout BURN_VARIANT* pValue | ||
| 103 | ); | ||
| 100 | static HRESULT InitializeVariableOsInfo( | 104 | static HRESULT InitializeVariableOsInfo( |
| 101 | __in DWORD_PTR dwpData, | 105 | __in DWORD_PTR dwpData, |
| 102 | __inout BURN_VARIANT* pValue | 106 | __inout BURN_VARIANT* pValue |
| @@ -223,6 +227,7 @@ extern "C" HRESULT VariableInitialize( | |||
| 223 | {L"LocalAppDataFolder", InitializeVariableCsidlFolder, CSIDL_LOCAL_APPDATA}, | 227 | {L"LocalAppDataFolder", InitializeVariableCsidlFolder, CSIDL_LOCAL_APPDATA}, |
| 224 | {VARIABLE_LOGONUSER, InitializeVariableLogonUser, 0}, | 228 | {VARIABLE_LOGONUSER, InitializeVariableLogonUser, 0}, |
| 225 | {L"MyPicturesFolder", InitializeVariableCsidlFolder, CSIDL_MYPICTURES}, | 229 | {L"MyPicturesFolder", InitializeVariableCsidlFolder, CSIDL_MYPICTURES}, |
| 230 | {L"NativeMachine", InitializeVariableNativeMachine, 0}, | ||
| 226 | {L"NTProductType", InitializeVariableOsInfo, OS_INFO_VARIABLE_NTProductType}, | 231 | {L"NTProductType", InitializeVariableOsInfo, OS_INFO_VARIABLE_NTProductType}, |
| 227 | {L"NTSuiteBackOffice", InitializeVariableOsInfo, OS_INFO_VARIABLE_NTSuiteBackOffice}, | 232 | {L"NTSuiteBackOffice", InitializeVariableOsInfo, OS_INFO_VARIABLE_NTSuiteBackOffice}, |
| 228 | {L"NTSuiteDataCenter", InitializeVariableOsInfo, OS_INFO_VARIABLE_NTSuiteDataCenter}, | 233 | {L"NTSuiteDataCenter", InitializeVariableOsInfo, OS_INFO_VARIABLE_NTSuiteDataCenter}, |
| @@ -1827,6 +1832,26 @@ LExit: | |||
| 1827 | return hr; | 1832 | return hr; |
| 1828 | } | 1833 | } |
| 1829 | 1834 | ||
| 1835 | static HRESULT InitializeVariableNativeMachine( | ||
| 1836 | __in DWORD_PTR dwpData, | ||
| 1837 | __inout BURN_VARIANT* pValue | ||
| 1838 | ) | ||
| 1839 | { | ||
| 1840 | UNREFERENCED_PARAMETER(dwpData); | ||
| 1841 | |||
| 1842 | HRESULT hr = S_OK; | ||
| 1843 | USHORT usNativeMachine = IMAGE_FILE_MACHINE_UNKNOWN; | ||
| 1844 | |||
| 1845 | hr = ProcNativeMachine(::GetCurrentProcess(), &usNativeMachine); | ||
| 1846 | ExitOnFailure(hr, "Failed to get native machine value."); | ||
| 1847 | |||
| 1848 | hr = BVariantSetNumeric(pValue, usNativeMachine); | ||
| 1849 | ExitOnFailure(hr, "Failed to set variant value."); | ||
| 1850 | |||
| 1851 | LExit: | ||
| 1852 | return hr; | ||
| 1853 | } | ||
| 1854 | |||
| 1830 | static HRESULT InitializeVariableComputerName( | 1855 | static HRESULT InitializeVariableComputerName( |
| 1831 | __in DWORD_PTR dwpData, | 1856 | __in DWORD_PTR dwpData, |
| 1832 | __inout BURN_VARIANT* pValue | 1857 | __inout BURN_VARIANT* pValue |
