我对 VFP 的 Grid 有一个说法:VFP 中最诡异的控件。 有很多人因为各种原因以使用 VFP 为“耻”。尤其是 Grid 又是最常用的控件之一,它的各种“特征”好像都是 VFP 独有的。 因此,才有了下面的代码,使 VFP Grid 看上去不像是 VFP Grid: 基于 Grid 基类创建一个自定义基类,并添加一个名为“Mask”的自定义方法: If ! 试试这个 VFP Grid 的“美容手术”? Follow me,认识不一样的 VFP !
闹心的事解决了,也探索了一些细节的技术问题,VFP-AgentOS 终于可以正式动工了。 VFP-AgentOS 是 VFP AI 插件的自然技术延伸,所以,它首先需要完成 AI 插件已经实现的部分。 所以,需要更改为HTML格式,且需要完成VFP和HTML的交互以完成 PRG<->SCX/VCX; 4.
大约 30 年前,MS 推出 VFP3。三十年弹指一挥间,但是仍旧有很多 foxer 对 OOP(面向对象) 这个概念懵懵懂懂。 OOP 是 VFP 中一个非常重要的概念。核心概念就是类和对象。 而这些,在 VFP 中是天然存在的。 假设你完全不懂什么是 OOP,但是仍旧可以使用 VFP 编写可运行的应用程序。 我个人看法,也许是因为 VFP 的“集成度”太高了。 所以,“类”隐藏在 VFP 中。而“对象”,也就是类实例,也就是应用程序中的各种可视/非可视的对象,就是一个个的按钮等控件,或者 timer 控件。 VFP 中一个强大的功能就是可以创建自定义类。 只要对 VFP IDE 不是特别的陌生,这一切都是自然而然的操作。 对于 VFP 类,除了有格式之分-- vcx 和 prg --之外,还有一个在常规 IDE 里无法实现的操作。
VFP中是没有“枚举”类型的。这可能是造成VFP代码中充斥“魔法数字”的原因之一。 魔法数字,按照百度百科的解释,“指在代码中直接出现且缺乏语义化解释的值。
尽管在 VFP6 帮助里看过对其的描述,但是仍旧是一头雾水,这玩意儿能干嘛? 再往后,倦猫说,写的都是什么玩意儿,打开VFP项目,直接运行,到处砰砰砰的报错...... 再之后,才有了我的开发框架中的项目钩子类: 除了上述截图所显示的功能,还可以对已经编译的 VFP EXE 进行操作,使之自动适用于启用 UAC 的 OS 并以管理员模式启动 VFP EXE。
而VFP常用的就是VFP开发的程序+MSSQL作为服务器的一个组合. 这是由MSSQL提供了服务给其它VFP程序或者其它类型的语言如C#. 无论是C# JAVA JS PHP Dephi PB等语言调用了.大家有没有发现,VFP在这个架构体系中有两个位置,一个是可以用来开发客户端,一个用开发WebAPI服务端.也就是VFP跟其它语言的地位是一样的
定位: 植入 VFP 系统内部的 AI 开发大脑。不是代码补全插件,是能自己动手改代码、建表单、修 bug 的智能工程师。 一、智能对话式开发 用自然语言驱动 VFP 开发,不需要记命令、查文档。 VFP‑AgentOS 会: 自动分析项目结构:读取主程序、配置文件、类库,理解你用的框架和编码风格 自动生成项目文档:生成MD格式 AI 上下文文件和框架配置,让 AI 始终在正确的语境下工作 三、原子工具体系 不靠“AI 凭记忆写代码”,而是真正接入 VFP 运行环境,能看、能改、能验证。 它能看见你的代码,也能真正改变你的代码。 不需要上传一行代码 医院、工厂、财务系统——数据敏感的行业也能放心使用 六、基础版能力 对话式开发与工具调用 项目上下文感知(单项目) 技能包 SCX/VCX <-> PRG 基础自愈闭环 基本范式引擎 基本状态图 VFP‑AgentOS
name=test 这些web请求都会进入我们的vfp程序,而我们的VFP程序则需要判断URL或者其他参数来执行对应的操作 fastcgi_pass 127.0.0.1:9000; 这句意思是,按照 VFP程序发布 Vfp程序发布比较简单,只需要你的EXE+fws.dll和VFP运行库,以及你使用的其他数据、扩展库等,本例中只需要fws.exe和fws.dll即可,发布服务器要注意修改fpm启动的参数 6.VFP FastCGI程序详解 代码比较简单,但想想还是要详细解释下,因为VFP里有太多似是而非的东西。 ? 第三行 Set Path To (JustPath(_vfp.ServerName)) 我们的VFP程序运行的当前路径,都是WEB服务器设定文件夹(当前NGINX设置的文件夹是 d:\fws\nginx ,因为它会切换到vfp9.exe所在位置,这是因为_vfp.ServerName 这个全局对像的属性,在开发环境下是 c:\program files\…\vfp9.exe,而运行环境下就是你的exe的完整路径
VFP 具有一个可以进行交互设计的 IDE。但是,在使用 Grid 的时候,因为不可言说的各种原因,在使用 Grid 控件时,总有可能需要用代码的方式来进行 Grid 的设置。 Procedure AutoBeauty Lparameters m.LcPRG *自动获取 VFP 美化选项并美化指定PRG文件: Local LcResource As Character 注意:所谓精简版的VFP,执行时可能会遇到错误,因为 _Beautify ...... Follow me,认识不一样的 VFP !
VFP读取串口的方式有四种 一、利用MSCOMM Actvie控件 二、使用MYFLL的读取控件的函数。 三、使用WIN32API来读取(只完成一半) 四、VFP低级文件函数读取。 Testing port " + ":", TestPort("com2") SET LIBRARY TO VFP2C32.FLL FUNCTION TestPort(cPort) #DEFINE FILE_SHARE_READ
有些库我们VFP没有的话,JS有的话,我们就可以大量运用了哦。 ?
你可以认为它是 XBase 版本的 C#,或者是 .NET 平台的 VFP(Visual FoxPro)。 好吧,无论是搞 .NET 的,还是搞 VFP 的,都被搞懵逼了......按照开发组的意思,X# 开发的初衷是为了延续 XBase 开发人员的技术生命和他们产品的生命力。 在国内,VFP 作为 XBase 系列的一员,拥有大量的受众。因此,你有什么样的选择?本专栏专注于 X# 语言。试图解开世人对其的疑团,当然,鉴于它和 VFP 的渊源,也会介绍 VFP 相关的技术。
因为 VFP 自身的特性,所以,对于所有开发者来说,并没有相对统一的代码规范:不同的注释方式、不同的变量命名规则等等。
VFP 在 AI 面前一个不可逾越的问题就是 AI 并不“认识”SCX/VCX。任何VFP IDE之外的 AI 应用都无可避免的牺牲效率。VFP AI 插件首要解决的就是这个问题。
消息队列就是信息的队伍,排先进先出顺序排序的 可以有多少队列,每个队列有多条消息 3 VFP创建一个消息队列 lcQueueName = "MyQueue1" &&消息队列的名字 oQueueInfo
因为VFP出来时还没有.NET,所以VFP不支持.NET,C#编写出来的DLL控件需要转换成系统COM组件,才能够被VFP调用,当然不仅仅局限于C#与VFP之间的调用,各种语言都有自己写COM组件的方法 下面就先介绍下,关于VFP与C#之间的联系 第一步:C#编写COM组件 1、新建一个类库项目 ? 2、将Class1.cs改为我们想要的名字(例如:MyClass.cs) ? 第二步:VFP调用COM组件 PRIVATE obj as Object obj = CREATEOBJECT("dll1.Class1")*!
下面是示例代码演示了 ActiveX 控件和 VFP 相关库的效率差异(nfjsonread.prg 是 VFPX 的 nfJson 项目中的文件): SET PROCEDURE TO nfjsonread.prg m.lojson.tk Follow me,认识不一样的 VFP !
此外,因为 VFP 只认识 ANSI ,而西班牙文和中文,在同一 OS 上,必然有一种语言会显示(部分)乱码,而主页所下载的 APP 是老易编译的,因此,直接使用,在中文环境会出现乱码。 因此,在使用汉化版时,一定不要忘记 domain4cn.txt 文件,它一定要和 APP 同处 VFP 安装目录。其内容,就是 github 的可用镜像地址。 完全可以忽略,但是随着 FoxServer 的不断完善,这最终会成为一个问题) 此外,因为编码的问题,你还需要手动修改一下 BaseCLass.prg 文件,如图添加一个单引号: 编译项目为一个 VFP