[feat] ensure VC++ Redistributable is installed on Windows during setup

This commit is contained in:
dijunkun
2025-09-12 12:49:35 +08:00
parent fda3743f86
commit 5fe7df8ea8
2 changed files with 35 additions and 3 deletions

View File

@@ -44,6 +44,27 @@ InstallDir "$PROGRAMFILES\CrossDesk"
InstallDirRegKey HKCU "Software\${PRODUCT_NAME}" "InstallDir"
ShowInstDetails show
Function CheckVCRedist
ReadRegDWORD $0 HKLM "SOFTWARE\Microsoft\VisualStudio\14.0\VC\Runtimes\x64" "Installed"
StrCmp $0 1 done
DetailPrint "Downloading Microsoft Visual C++ Redistributable..."
inetc::get /popup "" /caption "Downloading VC++ Runtime..." \
"https://aka.ms/vs/17/release/vc_redist.x64.exe" \
"$TEMP\\vc_redist.x64.exe"
Pop $0
StrCmp $0 "OK" +2
MessageBox MB_OK "Failed to download VC++ Redistributable. Please install it manually." IDOK done
ExecWait '"$TEMP\\vc_redist.x64.exe" /quiet /norestart'
done:
FunctionEnd
Section "VC++ Runtime"
Call CheckVCRedist
SectionEnd
Section "MainSection"
SetOutPath "$INSTDIR"
SetOverwrite ifnewer
@@ -109,9 +130,6 @@ Section "Uninstall"
RMDir /r "$LOCALAPPDATA\CrossDesk"
SectionEnd
Section -Post
SectionEnd
; ------ Functions ------
Function LaunchApp
Exec "$INSTDIR\crossdesk.exe"