Hacktoberfest 2026: the issues maintainers tagged for October, open and beginner-friendly. Browse Hacktoberfest issues

installer: remove obsolete ensureVCRedist check and VC++ redistributable download

Open Beginner friendly
#966 0 comments 0 reactions 0 assignees View on GitHub

Maintainers usually reply within 1 day

@dannyward630 is already working on this.

Since Oct 20, 2026.

  • #974 by @dannyward630 — open

Assessment

Difficulty
2/5
Estimated time
1-3 hours
Newbie friendliness
75/100
Issue type
Refactor
Clarity
Clearly specified
Activity status
Active
Tech stack
cpp, python
Domain
desktop, devops

Research direction

Read installer/installer.nsi and installer/macros.nsh to locate the ensureVCRedist call and function, and check installer/locale/*.nsh for the listed strings. Remove those items, then review the installer sources to confirm no references to the VC redistributable check or download remain.

Written by the indexing model from the issue text.

Description

Background

The installer currently calls ensureVCRedist in installer.nsi to check for ucrtbase.dll and msvcp140.dll, prompting to download and run Microsoft Visual C++ Redistributable (vc_redist.*.exe) via inetc.

Reasons to remove
  1. Windows 10+ minimum requirement: Universal CRT (ucrtbase.dll) has been an in-box Windows system component since Windows 10 build 10240 (2015). The check was originally for Windows 7 / 8.1 support (KB2999226), which has been dropped in PIME.
  2. Static CRT linkage: Core PIME binaries (PIMETextService.dll, PIMELauncher.exe, libIME2, libchewing) statically link the MSVC runtime (/MT via CMAKE_MSVC_RUNTIME_LIBRARY).
  3. Bundled runtime in Python: Python 3.12 embedded already ships vcruntime140.dll in python\python3.
  4. Offline installations: Downloading vc_redist via inetc during installation fails on offline machines and aborts the installer.
Tasks
  • Remove Call ensureVCRedist and Function ensureVCRedist from installer/installer.nsi.
  • Remove DownloadAndInstallVCRedist macro from installer/macros.nsh.
  • Clean up associated localized strings in installer/locale/*.nsh (DOWNLOAD_VCREDIST_*, INST_VCREDIST_*).
Dominant language
C++
Stars
1.5k
Forks
244
Avg merge
19h 59m
Merged PRs (30d)
33

Getting set up

This project ships no dev container, Dockerfile or contributing guide, so setting up is up to you: start from its README, and see our first-contribution guide for the general steps.

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from EasyIME/PIME

All issues in EasyIME/PIME

Similar issues

More C++ issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.