From 3597a555e7270ec211305cd2db9dcea1bcd8a333 Mon Sep 17 00:00:00 2001 From: rc-swag <58423624+rc-swag@users.noreply.github.com> Date: Tue, 25 Aug 2026 12:16:01 +1000 Subject: [PATCH 1/2] fix(windows): insthelp trustinfo and add manifest Change the manifest trustinfo to asInvoker from requireAdminstrator. This was causing the preuninstaller to fail as it couldn't elevate. This also adds the manifest back into the build as it was previously removed. fixes: 15187 --- windows/src/desktop/insthelp/build.sh | 4 ++-- windows/src/desktop/insthelp/insthelp.dpr | 2 +- windows/src/desktop/insthelp/manifest.in | 18 ++++++++---------- 3 files changed, 11 insertions(+), 13 deletions(-) diff --git a/windows/src/desktop/insthelp/build.sh b/windows/src/desktop/insthelp/build.sh index d57a4b935fd..a227162896f 100755 --- a/windows/src/desktop/insthelp/build.sh +++ b/windows/src/desktop/insthelp/build.sh @@ -27,7 +27,7 @@ function do_build() { create-windows-output-folders build_version.res # TODO: why no manifest? - # build_manifest.res + build_manifest.res delphi_msbuild insthelp.dproj "//p:Platform=Win32" sentrytool_delphiprep "$WIN32_TARGET" insthelp.dpr tds2dbg "$WIN32_TARGET" @@ -39,7 +39,7 @@ function do_build() { function do_publish() { # test that (a) linked manifest exists and correct # TODO: no manifest included? - # wrap-mt -nologo -inputresource:"$WINDOWS_PROGRAM_APP/insthelp.exe" -validate_manifest + wrap-mt -nologo -inputresource:"$WINDOWS_PROGRAM_APP/insthelp.exe" -validate_manifest wrap-signcode //d "Keyman for Windows Install Helper" "$WINDOWS_PROGRAM_APP/insthelp.exe" wrap-symstore "$WINDOWS_PROGRAM_APP/insthelp.exe" //t keyman-windows diff --git a/windows/src/desktop/insthelp/insthelp.dpr b/windows/src/desktop/insthelp/insthelp.dpr index ab0e47ff7db..ad5c5eb70ad 100644 --- a/windows/src/desktop/insthelp/insthelp.dpr +++ b/windows/src/desktop/insthelp/insthelp.dpr @@ -11,7 +11,7 @@ uses UserMessages in '..\..\..\..\common\windows\delphi\general\UserMessages.pas'; {$R version.res} -{-R manifest.res} +{$R manifest.res} begin CoInitializeEx(nil, COINIT_APARTMENTTHREADED); diff --git a/windows/src/desktop/insthelp/manifest.in b/windows/src/desktop/insthelp/manifest.in index d78e04053e1..676ffc8db15 100644 --- a/windows/src/desktop/insthelp/manifest.in +++ b/windows/src/desktop/insthelp/manifest.in @@ -6,15 +6,13 @@ version="$VersionWin" processorArchitecture="x86"/> Keyman Installation Assistant - - - - - - - + + + + + + + @@ -27,4 +25,4 @@ - \ No newline at end of file + From 16a1a6e7885b11d2db6b51204427f75502a001e7 Mon Sep 17 00:00:00 2001 From: rc-swag <58423624+rc-swag@users.noreply.github.com> Date: Thu, 27 Aug 2026 07:46:17 +1000 Subject: [PATCH 2/2] fix(windows): remove old TODO comments --- windows/src/desktop/insthelp/build.sh | 2 -- 1 file changed, 2 deletions(-) diff --git a/windows/src/desktop/insthelp/build.sh b/windows/src/desktop/insthelp/build.sh index a227162896f..5abbe74dd6d 100755 --- a/windows/src/desktop/insthelp/build.sh +++ b/windows/src/desktop/insthelp/build.sh @@ -26,7 +26,6 @@ builder_describe_outputs \ function do_build() { create-windows-output-folders build_version.res - # TODO: why no manifest? build_manifest.res delphi_msbuild insthelp.dproj "//p:Platform=Win32" sentrytool_delphiprep "$WIN32_TARGET" insthelp.dpr @@ -38,7 +37,6 @@ function do_build() { function do_publish() { # test that (a) linked manifest exists and correct - # TODO: no manifest included? wrap-mt -nologo -inputresource:"$WINDOWS_PROGRAM_APP/insthelp.exe" -validate_manifest wrap-signcode //d "Keyman for Windows Install Helper" "$WINDOWS_PROGRAM_APP/insthelp.exe"