diff options
Diffstat (limited to 'src/balutil/BalBootstrapperEngine.cpp')
-rw-r--r-- | src/balutil/BalBootstrapperEngine.cpp | 26 |
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 | |||
538 | public: // IMarshal | 564 | public: // IMarshal |
539 | virtual STDMETHODIMP GetUnmarshalClass( | 565 | virtual STDMETHODIMP GetUnmarshalClass( |
540 | __in REFIID /*riid*/, | 566 | __in REFIID /*riid*/, |