Hacktoberfest 2026: los issues que los mantenedores marcaron para octubre, abiertos y aptos para principiantes. Explorar issues de Hacktoberfest

PIMELauncher.exe fails with 0xc000007b on Windows ARM64 without the x86 VC++ runtime

Abierto
#983 0 comentarios 0 reacciones 0 asignados Ver en GitHub

Los mantenedores suelen responder en 1 día

Nadie ha tomado este issue todavía.

Evaluación

Dificultad
4/5
Tiempo estimado
3-5 días
Aptitud para principiantes
43/100
Tipo de issue
Error
Claridad
Bastante claro
Estado de actividad
Activo
Stack tecnológico
python, rust
Área
backend, desktop

Línea de trabajo

Inspect the Windows ARM64 installer and the build configuration for PIMELauncher.exe, which the report identifies as an x86 Rust executable linked to the dynamic MSVC runtime. First trace how the installer selects and launches VC++ redistributables on ARM64; compare that with the suggested static CRT or native ARM64 launcher options. Done means the launcher starts on a fresh ARM64 install and silent installation completes without an interactive runtime prompt.

Escrito por el modelo de indexación a partir del texto del issue.

Descripción

On Windows 11 ARM64, PIMELauncher.exe from the 2.0 builds fails to start with 0xc000007b ("The application was unable to start correctly") unless the x86 VC++ runtime is installed. The installer installs the ARM64 (and x64) runtime, but not the x86 one. As a result the backend never starts, and every PIME input method types plain text: the TSF DLL loads in the app but cannot reach the launcher.

Environment

  • Windows 11 Enterprise ARM64, build 26100 (a QEMU/KVM VM)
  • PIME AppVeyor master build 656 (Oct 21, ARM64X installer); also seen with 2.0.0-beta3
  • Python 3.13 ARM64 installed, which puts an ARM64 vcruntime140.dll on PATH

Cause
PIMELauncher.exe is x86 (PE machine 0x14c) and imports VCRUNTIME140.dll dynamically. Rust's MSVC targets link the CRT dynamically unless built with +crt-static. With no x86 runtime in SysWOW64, the loader keeps searching PATH, finds the ARM64 vcruntime140.dll (here from Python), and fails with STATUS_INVALID_IMAGE_FORMAT. Without such a DLL on PATH, it would fail with a "missing DLL" error instead.

Reproduce

  1. Use a fresh Windows 11 ARM64 machine with Python for ARM64 installed.
  2. Install PIME (silent or interactive).
  3. Sign in, or start PIMELauncher.exe: the error dialog appears, and keys typed in Notepad with a PIME input method come through unconverted.
  4. Install https://aka.ms/vs/17/release/vc_redist.x86.exe. The launcher now starts (the /log-file log shows "Watchdog started… Starting PIMELauncher2 Worker on pipe …"), and input methods work.

Possible fixes: build the launcher with a static CRT (RUSTFLAGS="-C target-feature=+crt-static"), install the x86 runtime on ARM64 as well, or ship a native ARM64 launcher.

Related: with /S, the installer still shows the "requires the VC++ Redistributable" message box, and runs the x64 runtime installer interactively on ARM64, so unattended installs stop there. Preinstalling the runtimes with /install /quiet avoids it.

Found while testing an input method built on PIME's Python backend (Claudish), with automated typing tests in a Windows-on-ARM VM. Thanks for the recent ARM64 work; with the x86 runtime installed, the master build works end to end in Notepad.

Lenguaje dominante
C++
Estrellas
1.5k
Forks
244
Merge medio
19 h 3 min
PR fusionados (30 d)
36

Preparar el entorno

Este proyecto no incluye contenedor de desarrollo, Dockerfile ni guía de contribución, así que la configuración corre por tu cuenta: empieza por su README y consulta nuestra guía para la primera contribución para los pasos generales.

Primeros pasos

  1. Lee el issue completo y luego la guía de contribución del proyecto.
  2. Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
  3. Haz un fork del repositorio y trabaja en una rama.
  4. Abre un pull request que haga referencia al número del issue.

Más de EasyIME/PIME

Todos los issues de EasyIME/PIME

Issues similares

Más issues de C++

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.