首页 时政热点 科技头条 智能AI 安全攻防 数码硬件 开发者生态 汽车 游戏 社会热点 开源推荐 医疗健康 归档 标签 关于

微软在 2007 年杀死了 FoxPro。无论如何,FoxPro 又复活了

摘要

What Visual FoxPro 10 would have been Visual FoxPro stopped at version 9, and at 32 bits. This is the same language, rebuilt on a foundation that has not been frozen since 2007. Four pieces are what m...

the and what that Visual FoxPro table bit The stops
2026-09-23 1 阅读 约5分钟阅读 boredjohnny
分享:
字号:
Visual FoxPro 10 将是 Visual FoxPro 停止在版本 9 和 32 位。这是同一种语言,是在自 2007 年以来从未冻结过的基础上重建的。四个部分使这一切成为可能。 64 位,端到端 32 位的上限已经消失 Visual FoxPro 是一个 32 位程序,它的决定性比看上去要大。这就是为什么一个表停在 2 GB 的原因,为什么一个备忘录文件停在 2 GB 的原因,以及为什么一个大报告在有足够空闲的机器上耗尽内存的原因。这些限制是隐藏在文件处理中的签名 32 位数字,而不是任何人做出的许可决定。 FoxDev Studio 始终是 64 位的。每个文件偏移量都是 64 位,并且表根本不会读入内存,因此用于阻止死机的同一个 .dbf 会持续到数百 GB。在使用它之前需要了解一件事:超过 2 GB 的表将无法再在 Visual FoxPro 中打开。如果你仍然在两者中工作,那就是一扇单向门。偏移量 / 及其到达的内容 Visual FoxPro 2,147,483,647 字节:表在 2 GB 处停止 前导位带有符号,这就是为什么它是 2 GB 而不是 4 FoxDev Studio 9,223,372,036,854,775,807 字节:偏移量永远不会停止每次读写的每个字节都以这种方式进行寻址 购买一个表的原因 下面的每个方块都是 2 GB:整个Visual FoxPro 表可以容纳的内容。 2 GB 279 方格:一张包含 130 字节记录的 FoxDev 表,558 GB。如果记录大小为 1 KB,则达到 4.4 TB,即 2,200 个记录。现在阻止它的是 DBF 头自己的记录计数 虚拟机 编译器,以及为运行 Visual FoxPro 所生成的内容而构建的机器 将程序编译为 p 代码并提供运行时来执行它。这是同样的安排,再次进行:一个编译器和一个用 Rust 编写并编译为 WebAssembly 的字节码解释器,因此无论应用程序运行在哪里,一台机器都可以运行您的代码。编辑器会通过该编译器检查您键入的内容,因此它下划线的内容和运行时拒绝的内容不会分开。正在运行的程序是一个纤程。当它需要来自外部世界的东西(消息框、模态表单、下一条记录)时,它不会调用并阻止;它会阻止它。它产生,工作在机器离开堆栈时完成,并且返回答案。这就是为什么 MESSAGEBOX() 会停止程序而不冻结其后面的窗口,为什么 READ EVENTS 会等待而不旋转,以及为什么 SetFocus 可以触发 GotFocus ,并且 Init 可以在表单仍在构建时运行,按照 FoxPro 始终执行的顺序。机器如何工作以及它运行什么。屏幕 你看到的表单是对象树,而不是它的图片 正在运行的表单是具有你期望的属性的实时对象树,并且界面是由 React 直接从该树绘制的。每个对象仅监视自身,因此 THISFORM.lblGreeting.Caption = cMsg 重新绘制一个标签而不是整个表单。在密集的屏幕上,这就是即时和缓慢之间的区别。设计师提前一步编辑了同一棵树。没有第二个模型与第一个模型保持一致,这是表单及其设计师开始讲述不同故事的常见地方。 32 位桥 您的旧库仍然会加载,尽管这里没有任何内容是 32 位的 .fll 是一个 32 位图像,并且 64 位应用程序中的每个进程都是 64 位,因此应用程序本身内部的任何内容都无法打开它。 SET LIBRARY TO 不会告诉您这是不可能的,而是启动一个小型 32 位进程,其唯一的工作是保存您的库,并且运行时会与它对话。这些调用是同步的,因为程序可能在表达式中途调用库,而稍后到达的答案将不是答案。它是根据真实的库进行衡量的:加密库、FoxTools 以及根据 Microsoft 自己的 API 示例构建的库。 64 位没有任何东西需要桥梁:DECLARE ... DLL 在同一进程中到达现代库,并且自动化对象以它们一贯的方式到达。旧路依然畅通;它只是不再是唯一的一个。
这篇文章对您有帮助吗?

订阅66必读

每日精选科技资讯,直达你的邮箱