aboutsummaryrefslogtreecommitdiff
path: root/src/balutil/BalBootstrapperEngine.cpp
diff options
context:
space:
mode:
authorSean Hall <r.sean.hall@gmail.com>2020-10-18 22:38:21 -0500
committerSean Hall <r.sean.hall@gmail.com>2020-10-24 20:17:06 -0500
commit1b6a4f9b4600079e829d5884f768563ed7dea5e5 (patch)
tree7db199ee381f31e675e6a28c248f037dc5f9018d /src/balutil/BalBootstrapperEngine.cpp
parentc9d14eb51e4b8458fd5e2738fcc7d1c1129ad22e (diff)
downloadwix-1b6a4f9b4600079e829d5884f768563ed7dea5e5.tar.gz
wix-1b6a4f9b4600079e829d5884f768563ed7dea5e5.tar.bz2
wix-1b6a4f9b4600079e829d5884f768563ed7dea5e5.zip
Add CompareVersions engine method and expose verutil in Mba.Core.
Diffstat (limited to 'src/balutil/BalBootstrapperEngine.cpp')
-rw-r--r--src/balutil/BalBootstrapperEngine.cpp26
1 files changed, 26 insertions, 0 deletions
diff --git a/src/balutil/BalBootstrapperEngine.cpp b/src/balutil/BalBootstrapperEngine.cpp
index b68ea7c2..8a78b127 100644
--- a/src/balutil/BalBootstrapperEngine.cpp
+++ b/src/balutil/BalBootstrapperEngine.cpp
@@ -535,6 +535,32 @@ public: // IBootstrapperEngine
535 return m_pfnBAEngineProc(BOOTSTRAPPER_ENGINE_MESSAGE_LAUNCHAPPROVEDEXE, &args, &results, m_pvBAEngineProcContext); 535 return m_pfnBAEngineProc(BOOTSTRAPPER_ENGINE_MESSAGE_LAUNCHAPPROVEDEXE, &args, &results, m_pvBAEngineProcContext);
536 } 536 }
537 537
538 virtual STDMETHODIMP CompareVersions(
539 __in_z LPCWSTR wzVersion1,
540 __in_z LPCWSTR wzVersion2,
541 __out int* pnResult
542 )
543 {
544 HRESULT hr = S_OK;
545 BAENGINE_COMPAREVERSIONS_ARGS args = { };
546 BAENGINE_COMPAREVERSIONS_RESULTS results = { };
547
548 ExitOnNull(pnResult, hr, E_INVALIDARG, "pnResult is required");
549
550 args.cbSize = sizeof(args);
551 args.wzVersion1 = wzVersion1;
552 args.wzVersion2 = wzVersion2;
553
554 results.cbSize = sizeof(results);
555
556 hr = m_pfnBAEngineProc(BOOTSTRAPPER_ENGINE_MESSAGE_COMPAREVERSIONS, &args, &results, m_pvBAEngineProcContext);
557
558 *pnResult = results.nResult;
559
560 LExit:
561 return hr;
562 }
563
538public: // IMarshal 564public: // IMarshal
539 virtual STDMETHODIMP GetUnmarshalClass( 565 virtual STDMETHODIMP GetUnmarshalClass(
540 __in REFIID /*riid*/, 566 __in REFIID /*riid*/,