| Previous | Next |
| STATUS_INVALID_IMAGE_WIN_32 | STATUS_BAD_BINDINGS |
STATUS_INVALID_IMAGE_WIN_64
The loader received a 64-bit image in an incompatible context
A 32-bit process cannot load a 64-bit DLL into its address space because pointer size, register conventions, unwind metadata, and PE optional-header layout differ. This status reports that the image class was recognized as 64-bit but is invalid for the current loading operation.
Installing a 64-bit operating system does not change the bitness of an already running 32-bit process. Plug-in hosts, COM servers, shell extensions, and injected modules must match the hosting process, or be moved behind an out-of-process interface.
What to inspect
- Inspect the image Machine field and PE32+ optional-header magic, then record the host process architecture.
- Verify that registry and COM registration select the matching in-process server for each bitness.
- Check package layout and launcher logic for accidental use of an x64 binary from an x86 process.
- Do not edit the PE header to report x86; the contained machine code and ABI remain 64-bit.
References
- Microsoft Open Specifications: NTSTATUS values
- Microsoft: PE and COFF format
- LLVM: llvm-readobj COFF inspection
- Microsoft: linking an executable to a DLL
Looking for a different code? Search another status or error code.