【问题标题】:unable to use turboc through xp. why? solution?无法通过 xp 使用 turboc。为什么?解决方案?
【发布时间】:2011-02-03 10:40:18
【问题描述】:

我在 Windows X 上直接打开 TurboC++ 编译器(dos 版本)时遇到问题。 如果我通过 Windows GUI 单击 TurboC++ 图标,它会打开一秒钟(一个空白的 dos 屏幕) 并关闭。 所以我必须通过命令行访问它,即,

cmd  (enter)
c:\tc\bin (enter)
tc.exe

这样 TurboC++ 就打开了,我就可以编程和一切了..

为什么我必须总是通过命令行启动tc.exe?为什么我无法通过 Windows XP 启动它?

另外,通过命令行启动tc.exe后,我无法通过它执行任何图形程序。

我编写了一个使用预定义函数创建圆的简单代码。 当我编译并运行程序时,tc.exe 退出并返回到命令提示符。

为什么会这样?有解决办法吗?

我也尝试过使用 DosBox 来运行 TurboC++。它在执行图形程序时关闭。

ps:这个问题只有我和我的朋友遇到过..... 我们学院的所有PC都安装了Windows XP或Vista,它们没有问题。 我正在使用 initgraph();用于初始化图形驱动程序(使用自动检测)和图形模式的功能。我已经为 bgi 文件提供了正确的地址。并且该文件夹包含所需的文件 (EGAVGA.bgi)。这个程序在我们大学运行良好。这与我的显卡(nvidia 9400 1gb)有关吗?

【问题讨论】:

  • 请问您为什么使用 80 年代的 C 编译器?
  • 请问为什么你们的大学还认为是 80 年代?
  • 必须是愚人节的玩笑。
  • 顺便说一句,我上的高中真的使用了 Turbo Pascal(也是 80 年代的),但是你能从一个承认自己不懂的数学老师开的课中期待什么电脑...
  • 恕我直言,这个问题应该被关闭。这不是关于编程,而是关于从较新的(32 位)操作系统运行 DOS 应用程序。我怀疑阅读 Windows .pif 文件会有所帮助。 microsoft.com/resources/documentation/windows/xp/all/proddocs/…

标签: compiler-construction windows-xp compatibility turbo-c++


【解决方案1】:

对于打开问题,您可以使用 .bat 文件打开 Turbo C++ 如下:

打开记事本并输入 TC.exe 的地址和 exe 文件的名称,如 D:\bhanu\TurboC++\TC.exe

并将其保存为 TC.bat 而不是 TC.txt 现在双击它运行 TC。

对于图形,您首先将 EGAVGA.BGI 文件从 bgi 文件夹复制到 bin,然后在 Turbo c++ 中打开 options->linker->library 并在底部两个库上标记“X”并取消标记所有其他库。

【讨论】:

    【解决方案2】:

    改用 visualc++ express。它是免费的,并配备了 c++11。

    【讨论】:

      【解决方案3】:

      你在做图形方面做得怎么样?如果您使用int 10h(或等效项)来更改模式,那么它应该可以正常工作。如果您使用 BGI,请确保程序的工作文件夹包含 Turbo C++ 附带的 BGI 文件——有关初始化 BGI 的更多详细信息,请在帮助中查找initgraph

      即使是配备现代显卡的现代 PC 似乎也有足够的旧版支持来运行 BGI 代码,尽管该程序似乎总是在图形模式下运行一次全屏,而不是在窗口中。

      不幸的是,我不知道为什么 Turbo C++ 可能无法从 GUI 启动。我刚刚使用 Borland C++ 来刷新我对 BGI 东西的记忆,它工作正常。

      【讨论】:

        【解决方案4】:

        右键单击 TC 图标并选择属性。转到兼容性选项卡。玩在那里找到的设置。如果这没有帮助,请询问您的老师如何在现代计算机上使用 25 年前的程序。

        【讨论】:

          【解决方案5】:

          80 年代的图形与今天完全不同 - 直接访问硬件,通常使用未记录的功能来优化性能。 DOS 中不存在驱动程序。每个程序都必须编写自己的硬件层(因此在 DOS 下,您必须为每个游戏单独配置视频和声卡。我们可以运行 80 年代的任何软件这一事实证明了微软。

          您可能会在VirtualPCVMWareVirtualBox 上运行它。它们都提供免费版本,如果你能找到旧的 DOS 6.22 副本,你可能会很高兴。否则,您可能会无法找到运行 Windows 3.11 的物理 486 并进行处理。根据您的大学与 Microsoft 的交易,他们应该能够免费获得 DOS 6.22 的副本 - 它仍然可以在 MSDN 上下载。虽然,如果您仍在使用 TurboC++,他们可能还没有注册任何与 MS 相关的内容。你也可以试试 FreeDOS。

          【讨论】:

          • 只是在列表中添加另一个选项 FreeDOS 可以是另一个选项
          • 请注意,Fizz 说它在从 cmd 窗口启动时有效。 (TC 使用的是 Borland 自己的 TurboVision。我怀疑这会直接插入显卡。)
          • @Eclipse:你说得对,我还没有读到那么远。 (抱歉,这个拼写真的很难读……)
          • 对不起,我不知道你会很难阅读(短信语言)..请耐心等待..我现在开始写正确的拼写
          • 我们能够很好地理解您的 txt spk,但是通过写出正确的英语来表现出一些努力和尊重会让更多人对您的问题感兴趣。
          猜你喜欢
          • 2022-01-13
          • 2015-09-12
          • 2016-03-07
          • 1970-01-01
          • 2015-09-02
          • 2021-05-20
          • 2019-10-19
          • 2018-04-02
          相关资源
          最近更新 更多