问题描述
我有Turbo Pascal的编译一个32位的EXE文件。我需要启动它。它运作良好,当我有Windows 7的32位,但现在我在Windows 7 64位,我也得到了以下异常:
I have a 32 bit exe file compiled with Turbo Pascal. I need to launch it. It worked well when I had Windows 7 32 bit, but now I'm on Windows 7 64 bit, and I get the following exception:
指定的可执行文件是不是这个操作系统平台上的有效应用。
要确保它适用于32位系统,我公司推出的C#程序在32位平台 - 它的工作原理
To make sure it works on 32 bit systems, I launched the C# program in a 32 bit platform - it works.
所以,我怎么能推出64位操作系统的32位的EXE文件?
So how can I launch a 32 bit exe file in 64 bit OS?
感谢
推荐答案
Turbo Pascal的只能产生16位code,从来就没有能够创造32位可执行文件的版本。运行16位code要求使用实模式仿真支持的CPU中(虚拟的虚拟机8086模式)。此仿真是不可用,如果处理器在64位模式下运行。
Turbo Pascal could only generate 16-bit code, there was never a version that could create 32-bit executables. Running 16-bit code requires a virtual machine that uses the real-mode emulation support in the CPU (virtual 8086 mode). This emulation is not available if the processor is running in 64-bit mode.
您不能在64位操作系统上运行16位的进程。你可能有一个镜头,在得到它与的DOSBox模拟器去。
You cannot run 16-bit processes on a 64-bit operating system. You may have a shot at getting it going with the DOSBox emulator.
这篇关于C#中的System.Diagnostics.Process:无法启动一个32位的exe文件在64位操作系统的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!