PIMELauncher.exe fails with 0xc000007b on Windows ARM64 without the x86 VC++ runtime
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
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.dllonPATH
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
- Use a fresh Windows 11 ARM64 machine with Python for ARM64 installed.
- Install PIME (silent or interactive).
- Sign in, or start
PIMELauncher.exe: the error dialog appears, and keys typed in Notepad with a PIME input method come through unconverted. - Install
https://aka.ms/vs/17/release/vc_redist.x86.exe. The launcher now starts (the/log-filelog 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
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de EasyIME/PIME
-
installer: remove obsolete ensureVCRedist check and VC++ redistributable downloadPosiblemente ocupada @dannyward630 la tomó hace 3 días. Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 75/100
Los mantenedores suelen responder en 1 día
-
添加"麼"輕聲 注音˙ㄇㄜ 順序1Abiertochewing enhancement upstream
Dificultad 2/5 1-3 horas Aptitud para principiantes 62/100
Los mantenedores suelen responder en 1 día
-
"麼" 建議加上 ai7Abierto
Dificultad 1/5 Menos de una hora Aptitud para principiantes 75/100
Los mantenedores suelen responder en 1 día
-
蝦米輸入法,使用 Ctrl + / 問題Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 60/100
EasyIME/PIME#753 · 1 comentario ·
Los mantenedores suelen responder en 1 día
-
Dificultad 3/5 1-2 días Aptitud para principiantes 56/100
Los mantenedores suelen responder en 1 día
Todos los issues de EasyIME/PIME
Issues similares
-
[mimalloc] update to 3.6.0Abiertocategory:port-update
Dificultad 2/5 1-3 horas Aptitud para principiantes 66/100
Los mantenedores suelen responder en 2 días
-
MinGW build faillureAbierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 67/100
facebookresearch/faiss#5775 · 1 comentario ·
Los mantenedores suelen responder en 2 días
-
Eval bug: minimax-m3: build_moe_ffn() drops the per-expert NVFP4 scale → garbled output (M3.1 Flash)Abiertobug-unconfirmed
Dificultad 2/5 1-3 horas Aptitud para principiantes 68/100
Los mantenedores suelen responder en 1 día
-
bug triage
Dificultad 2/5 1-3 horas Aptitud para principiantes 68/100
secondlife/viewer#6507 ·
Los mantenedores suelen responder en 1 día
-
clang:frontend code-cleanup HLSL
Dificultad 2/5 1-3 horas Aptitud para principiantes 74/100
llvm/llvm-project#235100 · 1 comentario ·
Los mantenedores suelen responder en 1 día