在FMX中实现PostMessage的方法

首先,做为一个从Windows下转过来的开发人员,许多时候,我们喜欢用PostMessage来触发一些异步执行的代码,但遗憾的是,FMX做为EMB的跨平台库的基础,只提供了SendMessage方法,却没有提供PostMessage方法。 那我们确实需要PostMessage怎么办?我因为用到了,所以研究了下,编写了一

在Andriod程序中获取外置SD卡根目录

我们知道,Andriod是基于Linux的,所以正常的存贮设备都被挂载到/mnt目录下,我们查找SD卡根目录就是要在下面找到那个卡是外置的SD卡,但遗憾的是,目前没有一种标准的方法来做到这一点(包括Andriod本身)。下面我为大家提供了一个函数来完成这一功能: function GetExtSDDir: String

QXML更新-修正了MoveTo移动到一个没有子结点的结点时出错的问题

【问题描述】 由于TQXMLNode的FItems成员是按需创建的,而在MoveTo函数实现时未检查目标父结点的FItems成员是否已创建,直接添加造成AccessVolation错误。 修改代码加入对FItems是否已经分配的检查,以解决此问题。 【严重程度】 高 【更新级别】 建议 【特别感谢】 新心晨曦

QJson与RapidJson性能的简单对比测试

盒子上一位朋友想知道QJson和C++编写的RapidJson之间的性能对比情况,限于精力,我只是简单的测试了下加载一个大的Json文件来对比解析性能(Demos\Delphi\VCL\QJson\Preferences.txt,文件大小:9.81MB),但做测试大家都知道与测试样本的关系很大,这里只对这一个测试用例负

QMsgPack更新-修正了移动节点时未检查自己是否是目标的父结点问题

【问题描述】 新增加的函数MoveTo在移动结点时,如果错误的将目标结点设置为自己的子结点,程序未报错但执行结果是错的。本更新解决这一问题,并会在发生这一情况时抛出异常,提示用户不能将自己移动到自己的子结点下。 【严重程度】 中等 【更新级别】 推荐

QJSON更新-修正了移动节点时未检查自己是否是目标的父结点问题

【问题描述】 新增加的函数MoveTo在移动结点时,如果错误的将目标结点设置为自己的子结点,程序未报错但执行结果是错的。本更新解决这一问题,并会在发生这一情况时抛出异常,提示用户不能将自己移动到自己的子结点下。 【严重程序】 中等 【更新级别】 推荐

QXML 更新 – 修正了移动节点时未检查自己是否是目标的父结点问题

【问题描述】 新增加的函数MoveTo在移动结点时,如果错误的将目标结点设置为自己的子结点,程序未报错但执行结果是错的。本更新解决这一问题,并会在发生这一情况时抛出异常,提示用户不能将自己移动到自己的子结点下。 【严重程序】 中等 【更新级别】 推荐

QWorker更新-修正了在2007下无法编译的问题

【问题描述】 新版的QWorker由于下列原因造成QWorker无法在2007下编译: 1、部分匿名函数没有加入条件编译控制,而2007并不支持匿名函数。 2、Delay函数的全局作业函数版本被错误的包含到了条件编译{$IFDEF UNICODE}{$ENDIF}之间。 3、QString单元调用的Interlocke

QMsgPack更新-增加Remove、Detach、AttachTo、MoveTo函数及允许重命名

【更新内容】 1、新增Remove函数移除指定的子结点,与Delete的区别在于Remove并不会释放子结点,而只是将其从父结点中移除而已。 /// <summary>将指定索引的子结点移除</summary> /// <param name=”AItemIndex”>要移除的子结点

QWorker更新-正式加入TQJobExtData扩展方式,已兼容移动平台

【问题描述】 上次更新增加的TQJobExtData扩展数据方式,未进行移动平台相关条件编译选项的设置,造成移动平台无法编译。修改加入相关条件编译选项,目前已兼容移动平台。 【严重级别】 中 【更新级别】 可选 【特别感谢】 恢弘

QWorker更新-修改了作业返回值为一个具体作业句柄

【更新内容】 修改Post、Delay、Wait、At、LongtimeJob的返回值类型,由原来的布尔值(Boolean)改为64位整数。返回的64位整数是对应于具体作业的句柄,在需要清理该作业时,可以直接当作参数传递给Workers.Clear函数,以更高效的清除单独作业。在投寄失败时,返回值为0. 由于此项变更,

QWorker更新-新增基于作业过程的初始化和释放方法

【更新内容】 新增了一个TQJobExtData对象类型以辅助用户来创建一个自动释放的对象实例,它有匿名版本,在支持匿名函数的Delphi 2009以上程序中,可以更方便直观的编写初始化和释放过程。 一、构造函数的声明 constructor Create(AData: Pointer; AOnFree: TQExtF

QDAC新增QCNDate单元,处理阴阳历之间的换算

该单元可以将1901-2050年间的农历日期与阳历日期之间做任意转换并提供了很多辅助函数,以帮助大家在做日程类应用时,进行相关处理。在Demos\Delphi\VCL下提供了一个Demo来演示这个用法,截图如下: 函数列表如下: /// <summary> /// 将指定的农历年月日编码为一个TCnDate

在Andriod程序中输出日志到Windows的QLogServer查看

大家知道日志是我们调试程序的一种重要方式,QDAC的QLog提供了一种异步的日志记录方式,以尽量减少到系统系统性能的影响。而且QLog支持Syslog协议输出,可以将日志输出给其它的syslogd兼容的日志查看器。当然为了方便大家,QDAC实现了一个自己的QLogServer,使用标准的UDP协议514端口来记录日志。