WindowsServer2003 x64 で x86 プロセスを作成しました。問題なく動作します。
しかし、VISTA x64 で x86 プロセスを作成しようとしています。エラー コード = 216 で失敗しました。(ERROR_EXE_MACHINE_TYPE_MISMATCH)。
2003x64 と VISTAx64 の違いはありますか?
WindowsServer2003 x64 で x86 プロセスを作成しました。問題なく動作します。
しかし、VISTA x64 で x86 プロセスを作成しようとしています。エラー コード = 216 で失敗しました。(ERROR_EXE_MACHINE_TYPE_MISMATCH)。
2003x64 と VISTAx64 の違いはありますか?
クライアントのPCでデバッグしていました。
使用している製品に 16 ビット セットアップまたは 16 ビット プログラムまたは一部の 16 ビット コードがあります。
これは、x64 マシンで CreateProcess (または CreateProcessEx) から 16 ビット EXE を実行すると発生します。
提案は
ソフトウェアのベンダーに連絡するには、Innosetup を最新バージョン (例: 16 ビット Innosetup) にアップグレードするか、InstallShield を最新バージョン (例: 16 ビット InstallShield) にアップグレードし、新しいインストーラー パッケージを提供するように伝えてください。
製品に DOS または MS-DOS のレガシー EXE または COM ファイルが含まれている場合は、ベンダーに Win32 または Win64 コマンドライン ベースのバージョンを問い合わせる必要があります。
VM 内で Windows Vista (32 ビット)、Windows 7 (32 ビット) のコピーを実行します。これらの 16 ビット ユーティリティは通常どおり機能します。