diff options
| author | Sean Hall <r.sean.hall@gmail.com> | 2020-04-29 19:31:01 +1000 |
|---|---|---|
| committer | Sean Hall <r.sean.hall@gmail.com> | 2020-04-29 19:53:29 +1000 |
| commit | b7faab06259d3afdc3205024a0004ace72157cbe (patch) | |
| tree | 4d9797f017b564c0fe6e8a602950c876daba612f /src/wixstdba/WixStandardBootstrapperApplication.cpp | |
| parent | 39e930d9aaff250e0fd5019eeedaa40717a6c6fe (diff) | |
| download | wix-b7faab06259d3afdc3205024a0004ace72157cbe.tar.gz wix-b7faab06259d3afdc3205024a0004ace72157cbe.tar.bz2 wix-b7faab06259d3afdc3205024a0004ace72157cbe.zip | |
Treat failing to load SCD like mbahost treats .NET 4.5.2 on Win7 RTM.
Diffstat (limited to 'src/wixstdba/WixStandardBootstrapperApplication.cpp')
| -rw-r--r-- | src/wixstdba/WixStandardBootstrapperApplication.cpp | 26 |
1 files changed, 25 insertions, 1 deletions
diff --git a/src/wixstdba/WixStandardBootstrapperApplication.cpp b/src/wixstdba/WixStandardBootstrapperApplication.cpp index 88a26534..826c4386 100644 --- a/src/wixstdba/WixStandardBootstrapperApplication.cpp +++ b/src/wixstdba/WixStandardBootstrapperApplication.cpp | |||
| @@ -2892,6 +2892,23 @@ private: // privates | |||
| 2892 | } | 2892 | } |
| 2893 | } | 2893 | } |
| 2894 | } | 2894 | } |
| 2895 | else if (E_DNCHOST_SCD_RUNTIME_FAILURE == m_hrFinal) | ||
| 2896 | { | ||
| 2897 | HRESULT hr = StrAllocString(&sczUnformattedText, L"#(loc.SCDRUNTIMEFAILUREErrorMessage)", 0); | ||
| 2898 | if (FAILED(hr)) | ||
| 2899 | { | ||
| 2900 | BalLogError(hr, "Failed to initialize SCDRUNTIMEFAILUREErrorMessage loc identifier."); | ||
| 2901 | } | ||
| 2902 | else | ||
| 2903 | { | ||
| 2904 | hr = LocLocalizeString(m_pWixLoc, &sczUnformattedText); | ||
| 2905 | if (FAILED(hr)) | ||
| 2906 | { | ||
| 2907 | BalLogError(hr, "Failed to localize SCDRUNTIMEFAILUREErrorMessage: %ls", sczUnformattedText); | ||
| 2908 | ReleaseNullStr(sczUnformattedText); | ||
| 2909 | } | ||
| 2910 | } | ||
| 2911 | } | ||
| 2895 | else // try to get the error message from the error code. | 2912 | else // try to get the error message from the error code. |
| 2896 | { | 2913 | { |
| 2897 | StrAllocFromError(&sczUnformattedText, m_hrFinal, NULL); | 2914 | StrAllocFromError(&sczUnformattedText, m_hrFinal, NULL); |
| @@ -2915,6 +2932,13 @@ private: // privates | |||
| 2915 | BalFormatString(sczUnformattedText, &sczText); | 2932 | BalFormatString(sczUnformattedText, &sczText); |
| 2916 | } | 2933 | } |
| 2917 | } | 2934 | } |
| 2935 | else if (E_DNCHOST_SCD_RUNTIME_FAILURE == m_hrFinal) | ||
| 2936 | { | ||
| 2937 | if (sczUnformattedText) | ||
| 2938 | { | ||
| 2939 | BalFormatString(sczUnformattedText, &sczText); | ||
| 2940 | } | ||
| 2941 | } | ||
| 2918 | else | 2942 | else |
| 2919 | { | 2943 | { |
| 2920 | StrAllocFormatted(&sczText, L"0x%08x - %ls", m_hrFinal, sczUnformattedText); | 2944 | StrAllocFormatted(&sczText, L"0x%08x - %ls", m_hrFinal, sczUnformattedText); |
| @@ -3754,7 +3778,7 @@ HRESULT CreateBootstrapperApplication( | |||
| 3754 | 3778 | ||
| 3755 | if (BOOTSTRAPPER_DISPLAY_UNKNOWN == pArgs->pCommand->display) | 3779 | if (BOOTSTRAPPER_DISPLAY_UNKNOWN == pArgs->pCommand->display) |
| 3756 | { | 3780 | { |
| 3757 | ExitOnFailure(hr = E_INVALIDARG, "Engine requested Unknown display type."); | 3781 | BalExitOnFailure(hr = E_INVALIDARG, "Engine requested Unknown display type."); |
| 3758 | } | 3782 | } |
| 3759 | 3783 | ||
| 3760 | pApplication = new CWixStandardBootstrapperApplication(hModule, fPrereq, hrHostInitialization, pEngine, pArgs); | 3784 | pApplication = new CWixStandardBootstrapperApplication(hModule, fPrereq, hrHostInitialization, pEngine, pArgs); |
