[付费]数据集内容输出 JSON 格式数据

嗯,这是一个试验性的收费产品,它是做为 TQJsonOutputChannel 的附属品存在的,信赖于 qjson_output_channel 单元,提供数据集转换为 JSON 数据内容的格式化输出支持。收费标准定为 200 元,含源码、示例和用法一对一指导。 【使用方法】 一如既往的简单,直接引用 qjson_da

【教程】对 TEvent 的一处增强

对于 TEvent 来说,如果是调用 WaitFor 等待超时时,如果程序退出时,事件仍在等待状态,就需要等待超时才能退出,造成程序退出时等待很长时间。要改进这一点,我们需要新版的 QWorker,它实现了一个 TAbortableEvent 的记录类型,然后支持取消操作。 TAbortableEvent 的增强在于:

[教程]如果在 Delphi /C++ Builder 中调试单元初始化时的错误

有时候,我们程序在进入 Main 函数入口前,就开始报错,比如 Acesss volation at XXX read at yyyy 一类的错误。这类错误一般是由于单元之间的引用关系和初始化顺序不一致造成的。比如单元 A 的初始化代码调用了单元 B 的函数,但单元 B 此时尚未初始化,所以其使用到的一些全局或静态变量

[分享]一种将 Delphi 组件属性信息保存到JSON的方法

此代码支持 Delphi 2007+,使用 QJSON 做为序列化的支持库。你可以自己改为使用其它的 JSON库(注:此文写法未完善,仅为示意)。 使用示例: 如上面的示例,由于写成了 class helper,所以保存到 Json 里,直接调用组件实例的 SaveToJson 就可以了,而从 Json 中恢复则直接调

使用 QDAC 创建 Linux 守护进程

上一篇文章中介绍了如何在 Delphi 中创建 Linux 守护进程,而这篇文章则试图将上文的操作简单化,不要再去考虑那么多事事非非。 【基础入门】 1、引入 qconsole_looper.pas 单元,这个单元本身原来是为了能够在控制台程序中运行主线程函数而引入的,换句话说,引用它后可以保证 QWorker 在控制

QDAC 付费产品概览

QDAC 开源项目除了为大家提供免费的开源框架外,为保证基本的费用支出,还有部分付费开源的组件带给大家,除非特别说明,不会依赖除了 QDAC 免费开源项目内容外的其它组件,另外下面的所有价格单元均为人民币元。 QLang:Delphi 下超级方便的多语言支持工具,部分良好编码的程序可以做到只需引用 qlang 单元,就

[QHttpRequest]使用自定义 DNS 来应对 DNS 劫持

为了保证业务的稳定性,避免在由于用户的 DNS 服务器返回错误的 IP 地址,造成程序无法正常运行的情况,QHttpRequest 新增了一个 OnDnsLookup 事件,以便让用户自己处理 DNS 请求。 举个例子:我们要获取 https://blog.qdac.cc 的内容,如果我们指定了 OnDnsLookup

[QLog]使用 CalcPerf 来查询函数性能瓶径

QLog 最新的变动修改了 CalcPerf 函数的返回值类型,改为返回 IPerfCounter(将来可能改名为 IQPerfCounter ) 接口,与以前的相比,这个接口多了一个名为 MarkEscape 的函数,用于记录两次记录之间的时间间隔,以便进行性能计数。 第一步:声明一个用于统计性能的变量,并为其初始化

[QMathExpr]数学表达式解析和执行工具

QMathExpr 是 QDAC 家族的一个新成员,为您提供数学表达式的解析和计算功能。它支持以下特性: 加(+)、减(-)、乘(*)、除(/)、求余(%)运算,除法时支持整除和常规除法运算。由于 % 被用做求余运算符,所以如果要当做百分号处理,请先直接将 % 替换为 /100 即可,如 10*2% 替换成 10*2/

[教程]QLog 分类型记录日志和 TQLogStringsWriter 的用法简单示例

QLog 最近做了一些更新,下面演示下更新的几个地方的使用方法: 1、为 TQLogWriter 基类添加了 AcceptLevels 属性,以便将不同类型的日志输出到不同的目标中。比如,我们要将 llError,llFatal 类型的日志输出到一个单独的文件中,我们可以用类似下面的代码实现(中间省略其它代码): va

[FMX] QDAC 新增 FMX VirtualTreeView 实现

好吧,我本来不想在 QDAC 里添加 UI 相关的东西,不过 FMX 的树实在让人不爽,等 VirtualTreeView 的 FMX 版也等不到,FMX 的闭源实现到是有一些,但根据群友的反馈,也就那样吧。所以狠狠心,咬咬牙,花了近一周的时间,自己写了一个,命名为 TQVirtualTreeView,自己测试的结果,

[FMX]在 QPlugins 中 VCL 宿主使用 FMX DLL 需要手动处理的问题说明

由于众所周知的原因,FMX 的 DLL 在 FreeLibrary 时,会出现 AV 异常,这实际上包含了两方面的原因:  FreeLibrary 时,未正确清理内部的计时器,造成 FreeLibrary 后,内部的计时器到指定的时间点后仍然运行,结果就出现了 AV 错误。  GDI+ 初始化和清理只能在宿主程序中执行

[QSecurity]QSecurity 使用入门指南

QSecurity 是 QPlugins 的安全相关插件接口及其实现, qplugins_security.pas 定义了安全相关的接口,我们在插件中使用时,只需要引用这个接口文件就可以了。而服务的实现单元并不包含在免费开源的范围内,如果您不想自己实现,或者想参考实现,需要付费购买,价格为人民币 99.00 元。 无论

【教程】在你的程序中使用自定义字体

【Android】 方法一:参考 [译]在 Andriod/IOS 程序中使用自己的字体 自己修改系统源码,缺点是每升级一个版本需要修改一次; 方法二:使用 QDAC 为此新增 qdac_fmx_fontex_android ,不过区分免费版和赞助版(赞助版为qdac_appfonts,同时支持所有平台),但使用步骤一

[QLang]Android 发布 QLang 语言文件

作者承诺的 QLang  FMX 版本一步步向我们走来,截止本文发布时,QLang 已经做到 : Windows 平台完整(VCL 和 FMX 框架同时支持,32位 / 64位均可) QLang 已经在 Android 下成功的编译运行,下面是两张效果图 好了,那么接下来的事情,本教程教大家怎么来将语言文件打包到你的

[QSocket]单连接多请求和多连接合并处理协议及实现思路

一般的网络业务处理都是请求+应答式的,当然有时候可以不需要应答(我们可以称之为通知)。但是,请求发送过去后,这个连接在服务器端处理完成返回数据之前,是处于空置状态的,而且也不利于充分利用服务器的处理性能,所以在 QSocket 我将为大家提供一个单连接多请求处理协议(暂定名)实现,它的目的是将请求和返回的结果顺序异步化