diff options
| author | Sean Hall <r.sean.hall@gmail.com> | 2022-04-01 15:44:34 -0500 |
|---|---|---|
| committer | Sean Hall <r.sean.hall@gmail.com> | 2022-04-01 22:06:11 -0500 |
| commit | 39b9a6112c2ff97f31f195749e2142538e47a2eb (patch) | |
| tree | 8b2337b589fa5f52fabce89c99d3fca0ef1c8fc0 /src/burn/engine/userexperience.cpp | |
| parent | 386a3578413ba16b3c0615d47870ee44a0e461f6 (diff) | |
| download | wix-39b9a6112c2ff97f31f195749e2142538e47a2eb.tar.gz wix-39b9a6112c2ff97f31f195749e2142538e47a2eb.tar.bz2 wix-39b9a6112c2ff97f31f195749e2142538e47a2eb.zip | |
Detect related bundles for BundlePackages.
Diffstat (limited to 'src/burn/engine/userexperience.cpp')
| -rw-r--r-- | src/burn/engine/userexperience.cpp | 36 |
1 files changed, 35 insertions, 1 deletions
diff --git a/src/burn/engine/userexperience.cpp b/src/burn/engine/userexperience.cpp index 06f87363..a1a010d2 100644 --- a/src/burn/engine/userexperience.cpp +++ b/src/burn/engine/userexperience.cpp | |||
| @@ -104,7 +104,7 @@ extern "C" HRESULT UserExperienceLoad( | |||
| 104 | args.pCommand = pCommand; | 104 | args.pCommand = pCommand; |
| 105 | args.pfnBootstrapperEngineProc = EngineForApplicationProc; | 105 | args.pfnBootstrapperEngineProc = EngineForApplicationProc; |
| 106 | args.pvBootstrapperEngineProcContext = pEngineContext; | 106 | args.pvBootstrapperEngineProcContext = pEngineContext; |
| 107 | args.qwEngineAPIVersion = MAKEQWORDVERSION(2022, 3, 17, 0); | 107 | args.qwEngineAPIVersion = MAKEQWORDVERSION(2022, 3, 31, 0); |
| 108 | 108 | ||
| 109 | results.cbSize = sizeof(BOOTSTRAPPER_CREATE_RESULTS); | 109 | results.cbSize = sizeof(BOOTSTRAPPER_CREATE_RESULTS); |
| 110 | 110 | ||
| @@ -1247,6 +1247,40 @@ LExit: | |||
| 1247 | return hr; | 1247 | return hr; |
| 1248 | } | 1248 | } |
| 1249 | 1249 | ||
| 1250 | EXTERN_C BAAPI UserExperienceOnDetectRelatedBundlePackage( | ||
| 1251 | __in BURN_USER_EXPERIENCE* pUserExperience, | ||
| 1252 | __in_z LPCWSTR wzPackageId, | ||
| 1253 | __in_z LPCWSTR wzBundleId, | ||
| 1254 | __in BOOTSTRAPPER_RELATION_TYPE relationType, | ||
| 1255 | __in BOOL fPerMachine, | ||
| 1256 | __in VERUTIL_VERSION* pVersion | ||
| 1257 | ) | ||
| 1258 | { | ||
| 1259 | HRESULT hr = S_OK; | ||
| 1260 | BA_ONDETECTRELATEDBUNDLEPACKAGE_ARGS args = { }; | ||
| 1261 | BA_ONDETECTRELATEDBUNDLEPACKAGE_RESULTS results = { }; | ||
| 1262 | |||
| 1263 | args.cbSize = sizeof(args); | ||
| 1264 | args.wzPackageId = wzPackageId; | ||
| 1265 | args.wzBundleId = wzBundleId; | ||
| 1266 | args.relationType = relationType; | ||
| 1267 | args.fPerMachine = fPerMachine; | ||
| 1268 | args.wzVersion = pVersion->sczVersion; | ||
| 1269 | |||
| 1270 | results.cbSize = sizeof(results); | ||
| 1271 | |||
| 1272 | hr = SendBAMessage(pUserExperience, BOOTSTRAPPER_APPLICATION_MESSAGE_ONDETECTRELATEDBUNDLEPACKAGE, &args, &results); | ||
| 1273 | ExitOnFailure(hr, "BA OnDetectRelatedBundlePackage failed."); | ||
| 1274 | |||
| 1275 | if (results.fCancel) | ||
| 1276 | { | ||
| 1277 | hr = HRESULT_FROM_WIN32(ERROR_INSTALL_USEREXIT); | ||
| 1278 | } | ||
| 1279 | |||
| 1280 | LExit: | ||
| 1281 | return hr; | ||
| 1282 | } | ||
| 1283 | |||
| 1250 | EXTERN_C BAAPI UserExperienceOnDetectRelatedMsiPackage( | 1284 | EXTERN_C BAAPI UserExperienceOnDetectRelatedMsiPackage( |
| 1251 | __in BURN_USER_EXPERIENCE* pUserExperience, | 1285 | __in BURN_USER_EXPERIENCE* pUserExperience, |
| 1252 | __in_z LPCWSTR wzPackageId, | 1286 | __in_z LPCWSTR wzPackageId, |
