USEGEAR

导航

2020年8月21日 #

datasnap的监督功能【3】-TCP链接监督功能

摘要: 1、对于使用TCP/IP链接的客户端应用程序,是具有状态的。一直等到客户端完成服务请求后释放配置的资源。如何掉线了,那么服务器就是傻傻地等着,可能导致资源耗尽。 如何在服务端选择一个链接切断关闭之: 2、KeepAlive功能 实现DataSnap服务器和DataSnap客户端互相查询的功能。 如果 阅读全文

posted @ 2020-08-21 14:32 USEGEAR 阅读(357) 评论(0) 推荐(0) 编辑

datasnap的监督功能【2】-管理Session

摘要: 1、服务端的Session是有TDSSession定义的。TDSSession提供了许多有用的方法和特性,再开发室取得服务or重要信息。 如Session状态、安排Session独享定时or自动执行工作,or在Session对象中暂时存储数据等。 方法 说明 function HasData(Key 阅读全文

posted @ 2020-08-21 14:04 USEGEAR 阅读(400) 评论(0) 推荐(0) 编辑

datasnap的监督功能【1】-服务端获取客户端连接信息

摘要: 在服务端获取连接的客户端相关info: TDBXClientInfo = recoed IpAddress : String; ClientPort : String; Protocol : String; AppName : String;//web客户端才有此参数 end TDBXClientI 阅读全文

posted @ 2020-08-21 10:54 USEGEAR 阅读(417) 评论(0) 推荐(0) 编辑

2020年7月8日 #

json中用到的token

摘要: JSON Web Token (JWT)是一个开放标准(RFC 7519)。 用于JSON对象在各个层之间安全地传输信息。该信息可以被验证和信任,通过数字签名。 应用场景: Authorization (授权) : 这是使用JWT的最常见场景。一旦用户登录,后续每个请求都将包含JWT,允许用户访问该 阅读全文

posted @ 2020-07-08 09:32 USEGEAR 阅读(1190) 评论(0) 推荐(0) 编辑

2020年7月3日 #

换肤之痛!

摘要: 学习熟悉新版dev的换肤和多文档的功能,就是死活实现不了预先的功能。 1、换肤,包括mdiChildren。 2、MDI多窗口的标签页死活出不来。 由于是学习练习,生成了跨平台的project。导致win下面的各种不适应和异常反应。 蠢到家的me Application.Initialize; // 阅读全文

posted @ 2020-07-03 11:38 USEGEAR 阅读(255) 评论(0) 推荐(0) 编辑

2020年6月30日 #

cannot resolve unit......

摘要: Just disable Error Insight (Tools -> Options -> Editor Options -> Code Insight, uncheck Error Insight). It works fine for me. Just disable Error Insig 阅读全文

posted @ 2020-06-30 14:55 USEGEAR 阅读(229) 评论(0) 推荐(0) 编辑

2020年6月3日 #

FireDAC 下FDMEMTable的的字段自动获取

摘要: 用clientdataset可以在设计时获取表结构。带来了不少方便。那么在FireDAC下如何处理? TSQLConnect继续provider的方法是没有问题的。而FireDAC不支持Provider->clientdataset方法。其实也很简单。 1、create方法 GetDataset(a 阅读全文

posted @ 2020-06-03 18:52 USEGEAR 阅读(430) 评论(0) 推荐(0) 编辑

2020年5月31日 #

FireDAC 下的批量 SQL 命令执行

摘要: 一、{逐条插入} procedure TForm1.Button1Click(Sender: TObject); const strInsert = 'INSERT INTO MyTable(Name, Age) VALUES(:name, :age)'; begin // FDQuery1.Fet 阅读全文

posted @ 2020-05-31 15:07 USEGEAR 阅读(852) 评论(0) 推荐(1) 编辑

2020年5月15日 #

FireDAC的数据库的FDConnect

摘要: 通常,我们设置一个ini文件,按照FDConnection的ini格式要求配置好。然后直接调用通知连接数据库是否OK。 FireDAC可以通过FDManager管理ini文件简单实现。即由FDConnnection通过FDManager管理ini文件和参数连接数据库的。可是:系统不允许有多个FDMa 阅读全文

posted @ 2020-05-15 17:44 USEGEAR 阅读(584) 评论(0) 推荐(0) 编辑

2020年5月10日 #

Readers and Writers JSON Framework(2)

摘要: 我们关心json的读写。特别在datasnap中,关于使用stream更是显得重要。其实轮子都帮你做好了,你不知道整经再研究就是一个悲哀。除非你要研究。 回正题: 处理json有二套框架。 JSON Objects Framework 这个框架创建临时对象来读写JSON数据。JSON对象框架要求您创 阅读全文

posted @ 2020-05-10 10:40 USEGEAR 阅读(129) 评论(0) 推荐(0) 编辑

JSON Objects Framework(1)

摘要: 学习datasnap,json必须掌握。用自身的JSON,就必须熟悉JSON Objects Framework。其中tostring和value区别就是一个坑。 The JSON objects framework supports all JSON types:all descendants o 阅读全文

posted @ 2020-05-10 09:54 USEGEAR 阅读(292) 评论(0) 推荐(0) 编辑

2020年5月9日 #

枚举与string之间查找与转换

摘要: 利用TypInfo单元的GetEnumName和GetEnumValue可以遍历任意枚举类型 其实上面程序运行会有err,为什么?因为没有理解和掌握JSON Objects Framework【感到简单问题复杂化了】。好多概念还是IsuperJSON的。 阅读全文

posted @ 2020-05-09 09:17 USEGEAR 阅读(446) 评论(0) 推荐(0) 编辑

2020年5月7日 #

datasnap的多表更新

摘要: 补课很多,xe一路走来,提供了许许多多的多层数据处理的方法。确实已经提供数个最优方案。 把下面的图跑通了,也就解决核心问题了。 【Berlin datasnap开发手册p261】 补充: 阅读全文

posted @ 2020-05-07 10:11 USEGEAR 阅读(278) 评论(0) 推荐(0) 编辑

2020年4月27日 #

nbhh的泛型:TDictionary

摘要: type TCity = class Country: String; Latitude: Double; Longitude: Double; end; const EPSILON = 0.0000001; var Dictionary: TDictionary<String, TCity>; C 阅读全文

posted @ 2020-04-27 10:07 USEGEAR 阅读(621) 评论(0) 推荐(0) 编辑

2020年4月23日 #

FDConnection lost后的处理right here

摘要: 阅读全文

posted @ 2020-04-23 08:56 USEGEAR 阅读(211) 评论(0) 推荐(0) 编辑

2020年4月6日 #

firedac的性能

摘要: 应该说,目前10.3的方方面面基本正常的坑基本填好了。因此综合考虑还是用datasanp+firedac框架操练。 数据量2w行,字段30个 第一次open fd读取数据用时363毫秒,ado用时783毫秒 第二次open fd读取数据用时10毫秒,ado用时553毫秒 遍历所有记录 第一次 fd读 阅读全文

posted @ 2020-04-06 10:04 USEGEAR 阅读(541) 评论(0) 推荐(0) 编辑

2020年3月17日 #

datasnap的回调广播

摘要: 感觉中的datasnap千孔百疮,到xe10已经具备冲击成千上万用户并发的能力了。应该放心用于项目实战了。补课研究10.1 datasnap开发手册。 用到的方法: (1)TDBXCallback机制; (2)TDServer.BroadcastMessage方法; (3)TDSClientCall 阅读全文

posted @ 2020-03-17 16:20 USEGEAR 阅读(660) 评论(0) 推荐(0) 编辑

2020年2月26日 #

xe10.3+paserver在Ubuntu下运行错误

摘要: xe.3的paserver在Ubuntu下执行呈现乱七八糟的错误提示。 原因:Ubuntu的版本和paserver编译的环境不一致。 注意:使用ARM64的版本。如ubuntu-18.04.2-desktop-amd64.iso 阅读全文

posted @ 2020-02-26 17:54 USEGEAR 阅读(360) 评论(0) 推荐(0) 编辑

2020年2月20日 #

SQL语句执行慢情况

摘要: 排查历史慢查询: SELECT TOP 20 [Total IO] = (qs.total_logical_reads + qs.total_logical_writes) , [Average IO] = (qs.total_logical_reads + qs.total_logical_wri 阅读全文

posted @ 2020-02-20 11:14 USEGEAR 阅读(303) 评论(0) 推荐(0) 编辑

Sql Server执行情况

摘要: 1、查找目前SQL Server所执行的SQL语法,并展示资源情况: SELECT s2.dbid , DB_NAME(s2.dbid) AS [数据库名] , --s1.sql_handle , ( SELECT TOP 1 SUBSTRING(s2.text, statement_start_o 阅读全文

posted @ 2020-02-20 11:03 USEGEAR 阅读(429) 评论(0) 推荐(0) 编辑

2020年2月19日 #

sql server2005的阻塞和死锁

摘要: 检查死锁及阻塞也可参考: sys.sysprocesses 能显示会话进程有多少, 等待时间, open_tran有多少事务, 阻塞会话是多少. 整体内容更为详细。 关键字段说明: spid 会话ID(进程ID),SQL内部对一个连接的编号,一般来讲小于50 kipid 线程ID blocked: 阅读全文

posted @ 2020-02-19 13:30 USEGEAR 阅读(217) 评论(0) 推荐(0) 编辑

2020年1月27日 #

TdxpageControl融合窗口和free

摘要: for I := cxpgcntrl1.PageCount - 1 downto 0do begin if cxpgcntrl1.Pages[i].Caption <> '首页' then begin cxpgcntrl1.Pages[i].Free; if cxpgcntrl1.PageCount 阅读全文

posted @ 2020-01-27 12:33 USEGEAR 阅读(186) 评论(0) 推荐(0) 编辑

2020年1月15日 #

调用dll中form,太古老了,可是

摘要: 太古老了,可是用的不多。应该考虑商品化项目首选。 阅读全文

posted @ 2020-01-15 10:21 USEGEAR 阅读(191) 评论(0) 推荐(0) 编辑

2020年1月1日 #

FMM4在XE下使用

摘要: 在project中增加 即可得到提示,如果内存有泄漏的话。但是想进一步仔细使用,还得把FMM3加进来。 在project中uses第一行增加 同时加进FastMM\FastMM4Messages.pas单元。 以上是第一步。 第二:定义编译条件变量 Shift+Ctrl+F11,打开项目设置窗口,设 阅读全文

posted @ 2020-01-01 12:41 USEGEAR 阅读(271) 评论(0) 推荐(0) 编辑

2019年12月31日 #

xe下ro流导致的错误

摘要: server端ro7.0的版本,client用的Xe10.3下Ro9.0。导致clientdataset数据记录有几十条就会出现内存泄漏现象。根源在下面: Remobjects9.0与XE10.3自带zlib1.2.11不兼容有BUG RO引用10.3自带ZLIB1.2.11编译安装有bug,表现为 阅读全文

posted @ 2019-12-31 15:35 USEGEAR 阅读(170) 评论(0) 推荐(0) 编辑

2019年12月23日 #

对话框延时自动关闭

摘要: procedure TfrmRKD_SMP_THREE.tmr1Timer(Sender: TObject); var Hwnd: THandle; begin Hwnd := FindWindow(nil, '提示'); if Hwnd <> 0 then SendMessage(Hwnd, WM_CLOSE, 0, 0); tmr1.Enabled:=False; end; 阅读全文

posted @ 2019-12-23 13:59 USEGEAR 阅读(285) 评论(0) 推荐(0) 编辑

2019年11月30日 #

再说cxGrid主从表相关

摘要: 查了那么多叽叽歪歪的资料:masterView的key,从表key和detailkey以及从表需要排序。 注意设定参数后,最后active数据集。这里有个顺序问题,否则会增加随机新 回到原点看随机help: 说重要的: Grid Mode: Master-Detail ExpressQuantumG 阅读全文

posted @ 2019-11-30 18:30 USEGEAR 阅读(534) 评论(0) 推荐(0) 编辑

2019年11月22日 #

古老的BAT文件在windows下的编辑

摘要: 直接上代码 应该由于高速处理能力,导致系列批处理太快而出现错误。通过增加echo choic /t 20 /d y /n >nul延时。不知道说的是否正确。 timeout /T 5看看。就是延时5s 阅读全文

posted @ 2019-11-22 17:41 USEGEAR 阅读(176) 评论(0) 推荐(0) 编辑

2012R2免登录操作

摘要: 由于许多程序系统,需要等服务器系统起来登录后才让运行。对于远程等一些操带来不方便。查资料: 如何在WINDOWSSERVER2012R2的登陆界面,启动特定的第三方软件? 服务器平台 Operating Systems > Windows Server 2012 服务器平台 Operating Sy 阅读全文

posted @ 2019-11-22 14:58 USEGEAR 阅读(1154) 评论(0) 推荐(0) 编辑

2019年11月20日 #

2012R2双网卡路由的设定

摘要: 目前T440服务器, os只能起步2012R2。intelWin联盟是实实在在的。在该os上,DB支持SQL2008。 你要安装SQL2005也可以。到网上查找攻略。那也是死去活来。还好。2008兼容2005,只是功能上有了加强。但是上了SQL2008的数据库,SQL2005对2008的库文件是不认 阅读全文

posted @ 2019-11-20 12:06 USEGEAR 阅读(923) 评论(0) 推荐(0) 编辑

2019年10月29日 #

如何确定dbgrid选择的是记录而不是分组

摘要: with cxgrdbtblvwGrid1DBTableView1.Controller do if FocusedRecord is TcxGridDataRow then begin i := cxgrdbtblvwGrid1DBTableView1.DataController.GetItemByFieldName('WMM_No').Index; RESULT := '''WMM_No'' 阅读全文

posted @ 2019-10-29 16:59 USEGEAR 阅读(180) 评论(0) 推荐(0) 编辑

2019年9月21日 #

sql server2005的死锁

摘要: 每次服务激活时检查。有点蒙,是不是该这样。有什么好办法请告诉我。 测试做一个deadlock: 根据得到的spid进行kill 阅读全文

posted @ 2019-09-21 23:46 USEGEAR 阅读(140) 评论(0) 推荐(0) 编辑

2019年9月14日 #

fastreport6的frxpngimage.pas不能编译xe下

摘要: 升级很痛苦,因为兼容问题。 fastreport6的frxpngimage.pas不能编译出现错误 把all pChar改成类型PAnsiChar。自己查pChar和PAnsiChar在高版本的xe中有啥不同可知。 对于2009年以前版本的Delphi PChar 和 PAnsiChar 完全一样。 阅读全文

posted @ 2019-09-14 15:30 USEGEAR 阅读(502) 评论(0) 推荐(0) 编辑

2019年8月31日 #

换机换系统记录过程

摘要: 说明: 有老机器换新机器。ssd256系统盘,1TB数据盘。 因为新机器是八代cpu,dell7060商用机。导致仅仅换硬盘失败。因为八代cpu不识别非GPT分区。所以需要把原256ssd的分区由win7的MBR格式改成GTP格式。注意,是引导盘的格式要转换。 步骤 1、通过PE把系统256ssd克 阅读全文

posted @ 2019-08-31 18:57 USEGEAR 阅读(295) 评论(0) 推荐(0) 编辑

2019年8月13日 #

cnpack导致view快捷键失灵。

摘要: 学习d10.3。出现怪问题: 卸载cnpack出现: 这下要用快捷键了。那可不烦透了。 如此就ok了。 鸡蛋好吃,还要知道母鸡如何生蛋的? 阅读全文

posted @ 2019-08-13 17:44 USEGEAR 阅读(255) 评论(0) 推荐(0) 编辑

2019年8月5日 #

fdMemtable FDQuery json之间的一些关系

摘要: 1 procedure TForm1.btn1Click(Sender: TObject); 2 var ss,ss1: TStringStream; 3 begin 4 ss := TStringStream.Create('', TEncoding.UTF8); {建立字符串流} 5 FDQuery1.SaveToStream(ss, sfJSON); {把数据集保存... 阅读全文

posted @ 2019-08-05 14:54 USEGEAR 阅读(642) 评论(0) 推荐(0) 编辑

D常用快捷键大全(转)

摘要: Ctrl+PageUp将光标移至本屏的第一行,屏幕不滚动。Ctrl+PageDown将光标移至本屏的最后一行,屏幕不滚动。Ctrl+↓向下滚动屏幕,光标跟随滚动不出本屏。Ctrl+↑向上滚动屏幕,光标跟随滚动不出本屏。Ctrl+Shift+NUM在光标行设置最多九个临时标志号,对临时切换非常有用。行 阅读全文

posted @ 2019-08-05 09:17 USEGEAR 阅读(501) 评论(0) 推荐(0) 编辑

2019年7月27日 #

cxGrid布局的保存和恢复

摘要: //恢复布局IniFileName := ExtractFilePath(Application.ExeName) + 'Layout/' + Self.Name + '.ini';if FileExists(IniFileName) thenSelf.tvResult.RestoreFromIni 阅读全文

posted @ 2019-07-27 14:59 USEGEAR 阅读(648) 评论(0) 推荐(1) 编辑

2019年7月11日 #

DevExpress汉化

摘要: https://www.cnblogs.com/kinglandsoft/p/10636590.html?tdsourcetag=s_pctim_aiomsg 关于电子表格的汉化。只需要把下面文件替换即可。不要重新安装控件。重新编译即可(18.2.1) {********************** 阅读全文

posted @ 2019-07-11 15:19 USEGEAR 阅读(398) 评论(0) 推荐(0) 编辑

2019年7月4日 #

ro在xe10.3上的安装

摘要: 在学习研究RO。 RO9.2.101.1295在xe10.3上安装遇到新问题。记录处理的办法: 没有采用执行exe安装的方法。而是采用复制源代码后编译安装。 1、把生成的bpl、dcp安装到默认目录,如C:\Users\Public\Documents\Embarcadero\Studio\20.0 阅读全文

posted @ 2019-07-04 16:51 USEGEAR 阅读(331) 评论(0) 推荐(0) 编辑