aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSean Hall <r.sean.hall@gmail.com>2021-04-28 19:31:37 -0500
committerSean Hall <r.sean.hall@gmail.com>2021-04-29 14:57:48 -0500
commit0e7fa93306858a9adde5b64ede920492632ba9e6 (patch)
treeb25ab5a303fe1ded2b1dfe43b3f88b805a8b3098
parentfa8aaa0fbc7ea3bbdcd3f119ee21c61f001f3a9b (diff)
downloadwix-0e7fa93306858a9adde5b64ede920492632ba9e6.tar.gz
wix-0e7fa93306858a9adde5b64ede920492632ba9e6.tar.bz2
wix-0e7fa93306858a9adde5b64ede920492632ba9e6.zip
Use MSFTEDIT_CLASS for Rich Edit control when available.
-rw-r--r--global.json2
-rw-r--r--src/ca/PrintEula.cpp18
-rw-r--r--src/ca/uica.vcxproj4
3 files changed, 18 insertions, 6 deletions
diff --git a/global.json b/global.json
index 4ec00563..697f5687 100644
--- a/global.json
+++ b/global.json
@@ -1,6 +1,6 @@
1{ 1{
2 "msbuild-sdks": { 2 "msbuild-sdks": {
3 "WixToolset.Sdk": "4.0.0-build-0211" 3 "WixToolset.Sdk": "4.0.0-build-0213"
4 }, 4 },
5 "sdk": { 5 "sdk": {
6 "allowPrerelease": false 6 "allowPrerelease": false
diff --git a/src/ca/PrintEula.cpp b/src/ca/PrintEula.cpp
index 770a082c..b19de9a6 100644
--- a/src/ca/PrintEula.cpp
+++ b/src/ca/PrintEula.cpp
@@ -32,6 +32,7 @@ static void ShowErrorMessage(__in HRESULT hr);
32//Global variables 32//Global variables
33PRINTDLGEXW* vpPrintDlg = NULL; //Parameters for print (needed on both sides of WndProc callbacks) 33PRINTDLGEXW* vpPrintDlg = NULL; //Parameters for print (needed on both sides of WndProc callbacks)
34LPSTR vpszEulaText = NULL; 34LPSTR vpszEulaText = NULL;
35LPCWSTR vwzRichEditClass = NULL;
35HRESULT vhr = S_OK; //Global hr, used by the functions called from WndProc to set errorcode 36HRESULT vhr = S_OK; //Global hr, used by the functions called from WndProc to set errorcode
36 37
37 38
@@ -72,8 +73,18 @@ extern "C" UINT __stdcall PrintEula(MSIHANDLE hInstall)
72 ExitOnFailure(hr, "failed to read Eula text from MSI database"); 73 ExitOnFailure(hr, "failed to read Eula text from MSI database");
73 74
74 // Have to load Rich Edit since we'll be creating a Rich Edit control in the window 75 // Have to load Rich Edit since we'll be creating a Rich Edit control in the window
75 hr = LoadSystemLibrary(L"Riched20.dll", &hRichEdit); 76 hr = LoadSystemLibrary(L"Msftedit.dll", &hRichEdit);
76 ExitOnFailure(hr, "failed to load rich edit 2.0 library"); 77 if (SUCCEEDED(hr))
78 {
79 vwzRichEditClass = MSFTEDIT_CLASS;
80 }
81 else
82 {
83 hr = LoadSystemLibrary(L"Riched20.dll", &hRichEdit);
84 ExitOnFailure(hr, "failed to load rich edit 2.0 library");
85
86 vwzRichEditClass = RICHEDIT_CLASSW;
87 }
77 88
78 hr = CreateRichTextWindow(&hWndMain, &fRegisteredClass); 89 hr = CreateRichTextWindow(&hWndMain, &fRegisteredClass);
79 ExitOnFailure(hr, "failed to create rich text window for printing"); 90 ExitOnFailure(hr, "failed to create rich text window for printing");
@@ -113,6 +124,7 @@ LExit:
113 ::UnregisterClassW(WINDOW_CLASS, NULL); 124 ::UnregisterClassW(WINDOW_CLASS, NULL);
114 } 125 }
115 126
127 vwzRichEditClass = NULL;
116 if (NULL != hRichEdit) 128 if (NULL != hRichEdit)
117 { 129 {
118 ::FreeLibrary(hRichEdit); 130 ::FreeLibrary(hRichEdit);
@@ -242,7 +254,7 @@ LRESULT CALLBACK WndProc(
242 switch (message) 254 switch (message)
243 { 255 {
244 case WM_CREATE: 256 case WM_CREATE:
245 hWndRichEdit = ::CreateWindowExW(WS_EX_CLIENTEDGE, RICHEDIT_CLASSW, L"", ES_MULTILINE | WS_CHILD | WS_VISIBLE | WS_VSCROLL, CONTROL_X_COORDINATE, CONTROL_Y_COORDINATE, CONTROL_WIDTH, CONTROL_HEIGHT, hWnd, NULL, NULL, NULL); 257 hWndRichEdit = ::CreateWindowExW(WS_EX_CLIENTEDGE, vwzRichEditClass, L"", ES_MULTILINE | WS_CHILD | WS_VISIBLE | WS_VSCROLL, CONTROL_X_COORDINATE, CONTROL_Y_COORDINATE, CONTROL_WIDTH, CONTROL_HEIGHT, hWnd, NULL, NULL, NULL);
246 break; 258 break;
247 case WM_COMMAND: 259 case WM_COMMAND:
248 wmId = LOWORD(wParam); 260 wmId = LOWORD(wParam);
diff --git a/src/ca/uica.vcxproj b/src/ca/uica.vcxproj
index 09501a32..5ded1266 100644
--- a/src/ca/uica.vcxproj
+++ b/src/ca/uica.vcxproj
@@ -48,8 +48,8 @@
48 </ItemGroup> 48 </ItemGroup>
49 49
50 <ItemGroup> 50 <ItemGroup>
51 <PackageReference Include="WixToolset.Dutil" Version="4.0.65" /> 51 <PackageReference Include="WixToolset.Dutil" Version="4.0.72" />
52 <PackageReference Include="WixToolset.WcaUtil" Version="4.0.18" /> 52 <PackageReference Include="WixToolset.WcaUtil" Version="4.0.19" />
53 <PackageReference Include="Microsoft.SourceLink.GitHub" Version="1.0.0" /> 53 <PackageReference Include="Microsoft.SourceLink.GitHub" Version="1.0.0" />
54 <PackageReference Include="Nerdbank.GitVersioning" Version="3.3.37" /> 54 <PackageReference Include="Nerdbank.GitVersioning" Version="3.3.37" />
55 </ItemGroup> 55 </ItemGroup>