【问题标题】:How to create a ms-dos 7.10 program? [closed]如何创建一个 ms-dos 7.10 程序? [关闭]
【发布时间】:2018-06-01 20:35:55
【问题描述】:

有时我在商店里看到一些卖家的程序是用 MS-DOS 制作的。该程序只是黑白的,使用基本上是通过键盘。它不是命令提示符,因为它似乎有 3D 视觉效果,可以通过鼠标单击某些内容,cmd 中的内容不会发生。

下面我放了两张图片来展示我所说的那些程序:

1:

2:

所以我的问题是:

  1. 计算机使用什么操作系统来运行这样的程序。
  2. 如何制作这样的程序,需要什么软件,需要了解什么语言?

【问题讨论】:

  • 23 年前编写 MS-Dos 程序就不再有意义了。您需要参观博物馆,Borland 博物馆仍然开放。需要 32 位版本的 Windows 或 DOS 模拟器。考虑不要在上面浪费你的生命,没有意义。
  • 我很久以前就用 gwbasic 或 quick basic 开发过类似的软件
  • 图形模式下不是 3D 或 2.5D,而是文本模式下的伪 3D 效果 (TUI)。它仍然是在命令提示符下运行的控制台应用程序。即使在今天,您也可以在许多 Linux 控制台应用程序中看到它。这在 DOS 中很常见,有用于在 Turbo Pascal 和 Turbo C 中绘制这些 TUI 对象的库,因此您不必自己动手 forum.lazarus.freepascal.org/index.php?topic=18998.60 kriscode.blogspot.com/2018/02/…
  • something can be clicked by the mouse, what in cmd doesn't happen - Windows 控制台(有时被错误地称为cmd)确实支持mouse input
  • 甚至 DOS 也支持鼠标。这就是为什么我们可以点击像NC这样的TUI应用程序中的对象。一些应用程序,如 Norton Utilities 甚至使用技巧为您提供带有 "real" mouse pointer instead of an orange blob 甚至 checkboxes, radio buttons, scroll bars... 文本模式的虚假图形模式

标签: command-prompt dos


【解决方案1】:

这被称为Text-based User Interface 或 TUI,大多数现代操作系统都支持它们。不需要也不建议使用 Dos。您可以将控制台函数与 Windows API 一起用于 Windows TUI,或者在类 Unix 系统下使用 curses 或 ncurses。

【讨论】:

  • 很高兴知道!我会寻找它!感谢你的回答 !你有一个教程或类似的东西教我如何使用 Windows API 来实现我的目标?
  • windows API 在这里无关紧要。为此,您可以使用像 ncurses 这样的库
【解决方案2】:

您展示的图片可能是由某些(旧)编程语言(如 C++、Clipper、GwBasic、QuickBasic、Pascal 等)制作的软件屏幕。这些语言在图形界面(Windows、MacOs 等)的“魔力”之前使用,后来得到改进以图形方式运行,具有许多优势,例如鼠标支持,最重要的是,更简单的网络支持。

快船在 90 年代的巴西取得了巨大的成功。每个街头商家都有自己的 Clipper 软件来帮助管理。

其中一些编程语言甚至演变为使用图形化 IDE(集成开发环境),如 VisualC++、VisualBasic、Delphi(作为旧 Pascal 的演变)等。但随后使用它们构建的可执行文件变成了图形化需求,即:他们开始依赖图形用户界面来运行 - 所以在那个时候可执行文件不需要任何东西来运行......只是一个绿色磷显示和一个带有披萨和番茄酱残留物的粗糙键盘:D

我从你的照片中看出你住在巴西。可能你现在看到在一些地方运行这种“DOS”方面的旧系统,如视频位置商店(视频 locadoras)和停车场(estacionamentos)。这些旧的软件系统确实比在 Windows 等图形环境下开发的实际同类软件需要更少的资源,但实际上它们对网络的支持非常差(这也可能意味着打印机在局域网上)并且仅在“兼容模式”下运行,因为我们现在的系统主要是 64 位的(它们是 32 位的)。兼容模式可能代表内存分配问题,可能会降低整个环境的性能,可能会给您的机器带来风险,可能会使您的反病毒垃圾邮件烦人的病毒警报等。

我不会说“它没用”,但事实上,说实话 - 几乎没用。例如,如果您打算为视频定位商店(如果您拥有该业务)开发非常精确的、泰勒制造的、带有老式计算的味道的东西,它们可能会很有用,它可能相当不错。但是,如果您必须将第一个系统转换为另一个系统,以进行适应,例如,另一家商店或业务,那么这些努力就不会取得成果。这些语言基于其适当的 IDE,生产率非常低,没有封装,没有可重用的对象。

就开发这些软件的操作系统而言,通常你会被绑定到你的目标平台:如果你想开发这个“文本模式”软件在 Linux 中运行,你必须在 Linux 中编程机器,因为这将是创建那些特定比特代码以仅在该平台上运行的环境。如果您打算在 Windows (DOS) 机器上运行您的应用程序,则必须深入研究 Windows IDE。

也许可以进行调查,将这种“文本模式”的想法引入 Java 平台(我不是在谈论小程序或 Android),只是纯 100% java:它是启用窗口的,以千字节计,不要求在目标上安装 DLL,也不会使每个软件在安装时都会出现著名的“注册表混乱”;那么你可以从面向对象的语言中获益,它已经启用了网络,几乎是多平台的(只需稍加改动,你就可以让你的基本代码在 Win、Mac 和 Linux 上运行),并且语法非常流行并且接近 C++,但是有很多自动化设施(避免你像 C++ 那样被咬)作为内存管理。

悲哀的结论是:对抗进化也许毫无价值。

如果您认为这有助于解决您的疑问,请随时检查我的答案是否正确。谢谢。

【讨论】:

  • 哦,谢谢你的回答和帮助我!你说得对,我来自巴西。这里的一些商店使用我展示的程序。得知这些程序存在网络和兼容性问题,我很难过:(我非常喜欢这种“旧”视觉效果。所以,为了解决这个问题,我需要什么工具来在现代构建这样的程序哦,谢谢你的回答我,帮了我很多!你说得对,我来自巴西。有些商店使用我展示的程序。得知这些程序存在网络和兼容性问题,我很难过 :( 我非常喜欢这种“旧”视觉.
  • 那么,我需要什么工具来使用现代环境构建这样的程序?有哪些步骤?存在类似的东西吗?
  • 有一个网站使用旧工具:vetusware.com。我看到他们有 Clipper 编译器,但没有注册以确认下载是否处于活动状态。我建议您搜索 Clipper 语言,因为它所取得的所有成功可能反映在大量文献和参考资料中,这些文献和参考资料可以保存到今天。然而 Clipper 也很受欢迎,因为它的学习曲线低并且所谓的“简单”,我会补充说它是一种“有用”的语言,实际上,可能你放置的那些屏幕来自 Clipper progs。继续努力;)谢谢。
  • 我花时间搜索 Clipper 编译器和它的东西。在这里查看所有答案,我放弃了学习该语言来做一些过时的事情。所以我使用一种叫做“autohotkey”的语言,它有点简单,我可以让事情变得更真实,因为我自己构建了视觉部分和背景。你认为它更可靠吗?哦,不,我来自伯南布哥 :) 如果我们彼此不认识,我希望发生这种情况,哈哈哈,你有很多知识可以教!你真的参与了一个项目吗?
猜你喜欢
  • 2019-11-06
  • 2015-03-24
  • 1970-01-01
  • 1970-01-01
  • 2021-02-21
  • 2013-02-12
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多