diff options
| author | Bob Arnson <bob@firegiant.com> | 2021-09-18 19:18:17 -0400 |
|---|---|---|
| committer | Bob Arnson <bob@firegiant.com> | 2021-09-18 19:18:17 -0400 |
| commit | befda7bad8a90f43d7f9ca419e91f79613e0effb (patch) | |
| tree | 17e36af44fb4bd0e58c8f39359b99650758030d6 /src/ext/Util/ca/OsInfo.cpp | |
| parent | a4dc574fa13d828614058906c4e99fcb45965fe5 (diff) | |
| parent | f958aeb8eea975ef76b72e73c0e40303b3a6b0d0 (diff) | |
| download | wix-befda7bad8a90f43d7f9ca419e91f79613e0effb.tar.gz wix-befda7bad8a90f43d7f9ca419e91f79613e0effb.tar.bz2 wix-befda7bad8a90f43d7f9ca419e91f79613e0effb.zip | |
Merge branch 'ericstj-addNativeMachine' into develop
Diffstat (limited to 'src/ext/Util/ca/OsInfo.cpp')
| -rw-r--r-- | src/ext/Util/ca/OsInfo.cpp | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/src/ext/Util/ca/OsInfo.cpp b/src/ext/Util/ca/OsInfo.cpp index 4783673e..005407af 100644 --- a/src/ext/Util/ca/OsInfo.cpp +++ b/src/ext/Util/ca/OsInfo.cpp | |||
| @@ -485,3 +485,34 @@ LExit: | |||
| 485 | } | 485 | } |
| 486 | return WcaFinalize(er); | 486 | return WcaFinalize(er); |
| 487 | } | 487 | } |
| 488 | |||
| 489 | /******************************************************************** | ||
| 490 | WixQueryNativeMachine - entry point for WixQueryNativeMachine custom action | ||
| 491 | |||
| 492 | Called as Type 1 custom action (DLL from the Binary table) from | ||
| 493 | Windows Installer to set properties that indicates the native machine architecture | ||
| 494 | ********************************************************************/ | ||
| 495 | extern "C" UINT __stdcall WixQueryNativeMachine( | ||
| 496 | __in MSIHANDLE hInstall | ||
| 497 | ) | ||
| 498 | { | ||
| 499 | HRESULT hr = S_OK; | ||
| 500 | USHORT usNativeMachine = IMAGE_FILE_MACHINE_UNKNOWN; | ||
| 501 | DWORD er = ERROR_SUCCESS; | ||
| 502 | |||
| 503 | hr = WcaInitialize(hInstall, "WixQueryNativeMachine"); | ||
| 504 | ExitOnFailure(hr, "WixQueryNativeMachine failed to initialize"); | ||
| 505 | |||
| 506 | hr = ProcNativeMachine(::GetCurrentProcess(), &usNativeMachine); | ||
| 507 | ExitOnFailure(hr, "Failed to get native machine value."); | ||
| 508 | |||
| 509 | if (S_FALSE != hr) | ||
| 510 | { | ||
| 511 | WcaSetIntProperty(L"WIX_NATIVE_MACHINE", usNativeMachine); | ||
| 512 | } | ||
| 513 | |||
| 514 | LExit: | ||
| 515 | if (FAILED(hr)) | ||
| 516 | er = ERROR_INSTALL_FAILURE; | ||
| 517 | return WcaFinalize(er); | ||
| 518 | } \ No newline at end of file | ||
