本文介绍了C#中的System.Diagnostics.Process:无法启动一个32位的exe文件在64位操作系统的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有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位操作系统的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

10-24 01:39