![](https://img-blog.csdnimg.cn/20191015093215291.jpg?x-oss-process=image/resize,m_fixed,h_224,w_224)
delphi开发
文章平均质量分 58
火星牛
码农,兼爱诗词绘画,delphi,nodejs,重庆大学
展开
-
delphi10.4使用uniGUI
从csdn下载了uniGUI的1.90.0.1555版本:uniGUI_Professional_1.90.0.1555.rar_unigui-Web服务器文档类资源-CSDN下载编译时还是找不到某些源码文件如:uniStrUtils.pas,ext.pas..............但是没关系,用里面的\Framework\uniGUI\Dcu或\Framework\uniGUI\Dcu64目录中的dcu文件,可以全部dpk编译通过。写了一个demo,用exe模式或者isa...原创 2022-04-20 17:29:33 · 2682 阅读 · 0 评论 -
FastCube的多语言化
FastCube 2.10它的多语言机制没有严格使用ResoureString来处理,如果是那样,直接用Acro Multi-Language Suite元件处理就可以了(Hook了LoadString这个API)。FastCube的多语言机制是一种静态的字典,类似xml格式,如:{******************************************}{ }{ F原创 2020-06-24 17:51:05 · 484 阅读 · 0 评论 -
delphi在window10下用uniGUI开发isapi的调试方法
好久没有用delphi了,有个老同事还在持续使用新的Delphi,用到10.3版本了。他说我原来写的Acroprise Multi-Language Suite多语言元件,在用uniGUI元件开发web程序时,standalone下32bit和64bit都没有问题,在isapi下32bit没问题,但是64bit有报错,web界面出不来。我准备了开发环境:windows 10,delphi 10.3,uniGUI 1.90。standalone下,AcroMulti在32bit和64bit确实没问题。原创 2020-05-16 08:44:18 · 2027 阅读 · 3 评论 -
中文简繁体互转时的语义识别AI
中文简繁体互转时,使用直译很简单,Delphi中使用LCMapStringW这个API。但是如果要追求完美,考虑两岸用词习惯,就需要考虑“语义”,有两种情况:(1)字还是基本是那个字,只是写法不同。如: 周期 - 週期 周杰伦 - 周傑倫 (2)字都变了。如:文件 - 檔案 程序 - 程式周和週:◎ “周”作姓、朝代时,繁体也为“周”,与简体同形。◎ 圈子、周...原创 2020-03-20 11:11:39 · 843 阅读 · 0 评论 -
ADO引起的服务器内存泄漏
上个月公司1.8万买了一台dell服务器,于是拿来架设我们的软件做了压力测试,看看到底能负荷多少终端。安装了windows 2008 R2 Enterprise版本64位,数据库用sqlserver 2008 r2。测试发现可以到400台左右,但是发现连续运行两天后,出现out of memory错误了。 首先,用fastmm检查内存泄漏,查来查去没有发现;又用AQTime,MemPrr原创 2010-09-30 18:38:00 · 4483 阅读 · 9 评论 -
C#调用delphi编写的dll时如何传入传出OLEVariant
假设在delphi写一个dll,export这样一个函数:function Test_OLEVariant(AEndPointURL:PWideChar;AParams:OLEVariant;out AResult:OLEVariant):HResult;stdcall;begin Result:=0; try AResult:=VarArrayOf([AParams[0]+原创 2010-11-19 11:54:00 · 3474 阅读 · 4 评论 -
IOCP原理
http://www.douban.com/group/topic/17415353/网络程序入门后的第一件是就是学会选择合适的io模型,这对于一个网络程序来说非常重要,特别是性能。当前Windows支持的各种Socket I/O模型如下: select模型 WSAAsyncSelect模型 WSAEventSelect模型 Overlapped I/O 事件通知模型转载 2011-10-09 15:03:59 · 1610 阅读 · 0 评论 -
Delphi XE DBX 序列化Json的bug
delphi XE Update1 15.0.3953.35171 序列化一个阵列,如下:procedure TForm1.Button2Click(Sender: TObject);var vObject:TJsonObject; vPair:TJsonPair;begin vObject:=TJsonObject.Create(); vPair:=TJsonPair原创 2012-02-23 16:40:41 · 3096 阅读 · 0 评论 -
IOCP实例
http://www.cnblogs.com/duzouzhe/archive/2010/01/13/1646514.html原文网址:http://www.codeproject.com/KB/IP/iocp_server_client.aspx源码使用了高级的完成端口(IOCP)技术,该技术可以有效地服务于多客户端。本文提出了一些IOCP编程中出现的实际问题的解决方法,并提转载 2011-10-09 15:38:52 · 1836 阅读 · 0 评论 -
Replacing JSON Libraries in Delphi REST Servers
http://blog.marcocantu.com/blog/json_libraries_delphi_rest.htmlIf you want to take advantage of jQuery and some of its plug-ins in a Delphi XE DataSnap REST Server application, you should replace th转载 2012-02-24 09:56:19 · 1585 阅读 · 0 评论 -
一句话评论设计模式六大原则
http://blog.csdn.net/jesse621/article/details/7216331原则,故名思议则是本质的意思。所谓擒贼先擒王,研究设计模式自然要先了解设计原则,所有的模式都是在这些原则的基础之上发展起来的,有的是侧重一个,有的是多个都有所涉及。看完设计模式之后,我感觉到每个模式都有这些原则的影子,还渗透着面向对象的三大属性,也觉得这些原则也都有相通之处,,正是有了他们转载 2012-01-30 12:52:15 · 575 阅读 · 0 评论 -
Fixing TCriticalSection
http://www.delphifeeds.com/go/f/86827?utm_source=feedburner&utm_medium=email&utm_campaign=Feed%3A+delphifeeds+%28DelphiFeeds.com%29TCriticalSection (along with TMonitor) suffers from a severe转载 2011-12-01 08:15:13 · 1815 阅读 · 0 评论 -
EUpdateError -2147217900
Delphi XE(delphi7没有这个问题)在用ADO+TClientDataSet删除数据时,用DataSetProvider.ApplyUpdates更新,DataSetProvider.ResolveToDataSet要设为false,为true时没有这个现象。如果sqlserver2008数据库中有个触发器,它检查资料被别的表引用到了,用raiseerror拒绝删除。ALT原创 2011-11-04 10:55:04 · 1822 阅读 · 0 评论 -
ADO,ADOStream,Dbexpress与TDataSetProvider的效率
在中间层服务器,打包DataSet的资料,客户端用DataSet接收,有两种格式:(1)、TDataSetProvider.Data得到的格式,姑且叫做Midas格式(2)、ADO _Stream得到的格式,姑且叫做ADOStream格式,这其中又分为ADTG格式和XML原创 2011-08-09 10:00:04 · 1930 阅读 · 1 评论 -
Delphi XE2(RAD Studio XE2/Delphi16)Beta 试用体验(3)
Reord类型,看起来变成了Object,也可以写函数,偶的神啊,看看System.Types.pas里面的TRect: TRect = record private function GetWidth: Integer; procedure Se原创 2011-08-24 13:19:05 · 1512 阅读 · 0 评论 -
Delphi XE2(RAD Studio XE2/Delphi16)Beta 试用体验(2)
这个版本的编译指令是Ver230。很多单元名称类似C#,使用多级方式了,如: System.SysUtils, System.TypInfo, System.Types, System.Classes,一般的元件增加了一个LiveBindin原创 2011-08-24 09:57:00 · 2007 阅读 · 0 评论 -
Delphi XE2(RAD Studio XE2/Delphi16)Beta 试用体验(1)
Delphi XE2,代号Pulsar(脉冲星),Beta版下载地址:https://beta.embarcadero.com/home.html每次下载新的版本前要对上个版本做个问卷调查。我下载的是beta ten,是在线安装程序。可能是它的服务器限流了,我的下载速原创 2011-08-18 13:13:33 · 1517 阅读 · 0 评论 -
RAD Studio XE2上市啦?
台湾同事收到信息说RAD Studio XE2上市了,但官网上都没看到。原创 2011-09-06 10:34:43 · 1715 阅读 · 0 评论 -
c#调用delphi编写的SOAP Web Service(2)
2、使用Soap Toolkit。目前最新Toolkit是3.0,从微软下载http://www.microsoft.com/downloads/en/details.aspx?FamilyId=C943C0DD-CEEC-4088-9753-86F052EC8450&displaylang=en,安装。然后在visual studio你的项目中,在“引用”上右键单击,选择“添加引用”,切原创 2012-03-02 16:58:20 · 1511 阅读 · 0 评论 -
windows7下不产生virtualstore目录的方法
开始->执行gpedit.msc打开“本地策略编辑器”找到“本地计算机策略”-“计算机配置”-“Windows设置”-“安全设置”-“本地策略”-“安全选项”,在右边列表中找到这两项:------“用户帐户控制: 将文件及注册表写入失败虚拟化到每用户位置”。禁用它。这样没有权限时直接会失败。------“用户帐户控制: 以管理员批准模式运行所有管理员”。禁用它。这样你本机管理员就有任何原创 2012-03-05 13:27:21 · 6384 阅读 · 0 评论 -
文本翻译API及Web Service
1、Google Translate API v1,一直是免费的,但从2011年5月26日开始说要停用,到2011年12月1日完全关闭。http://code.google.com/intl/zh-CN/apis/language/translate/v1/getting_started.html 2、Google Translate API v2 ,只提供收费服务,每天调用次数也有限原创 2012-03-10 10:40:27 · 1042 阅读 · 0 评论 -
delphi10.3编译的64bit程序窗体变小
最近搞了个delphi10.3来玩,把一个旧的程序改到64bit下编译,成功后,发现两个问题:画面和图片变小了。 这个可以调整参数:Tools-Options-Application-Manifest-DPI Awareness,被它设置为“Per Monitor V2”了,改为“none” 任务栏上的图标是白色空图标。 很奇怪,参数Tools-Options-Application-I...原创 2019-06-14 20:17:12 · 1359 阅读 · 0 评论 -
delphi调用阿里云的函数计算服务FC
阿里云函数计算:https://www.aliyun.com/product/fc?spm=5176.7933691.765261.210.ijPFRCdelphi版本:Embarcadero® Delphi 10.2 Version 25.0.26309.314 阿里云最开始有PaaS层的“云引擎ACE”,像百度的“应用引擎BAE”一样,但是在2016时,阿里把它关闭了。目前,阿里的原创 2017-09-03 11:06:30 · 1259 阅读 · 1 评论 -
delphi调用阿里云的对象存储服务OSS
阿里云的对象存储:https://www.aliyun.com/product/oss?spm=5176.8142029.388261.220.tpdG6e其开发文档中没有提供Delphi的SDK,参考javascript的SDK,大致修改后可以运作:unit wxhAliYun_OSS;interfaceuses REST.Client,system.JSON,system.S原创 2017-09-03 10:35:33 · 4299 阅读 · 8 评论 -
Delphi 10 Seattle不支持intel atom?
测试Embarcadero® Delphi 10 Seattle Version 23.0.20618.2753,Multi-Device Application。华硕平板ZenPad S 8.0(Z580CA)http://detail.zol.com.cn/403/402139/param.shtml,android系统使用的cpu是intel atom z3580,x86架构,del原创 2016-02-04 10:34:07 · 1758 阅读 · 0 评论 -
delphi 10 seattle "Automatic Reference Counting"问题
测试Embarcadero® Delphi 10 Seattle Version 23.0.20618.2753,Multi-Device Application。从资源中读取图片:procedure TKsColorBall.GetImagesFromResource;var i:integer; [Unsafe]Bmp:TBitmap; //必须加[unsafe],因为a原创 2016-02-01 09:24:15 · 1345 阅读 · 0 评论 -
Delphi的dll如何向C#传出string(2)
delphi xe开发的dll有Test_ReturnPChar和Test_ReturnPAnsiChar两个函数:procedure MoveStr2PChar(const AStr:WideString;const APChar:PWideChar;var APCharLen:integer);var oldLen:integer; sLen:integer;begin o原创 2013-05-23 10:10:03 · 2354 阅读 · 0 评论 -
Delphi的dll如何向C#传出string(1)
如果从dll传出string,一般定义成PChar,由调用者分配好内存,并告诉大小,这样比较麻烦。既然delphi的dll可以传回variant(实际是array),就把字串转成byte array直接传回吧,如:Delphi XE代码:function Call(AEndPointURL:PWideChar;AServiceName,AMethodName:PWideChar;原创 2012-02-22 14:17:52 · 2417 阅读 · 0 评论 -
delphi7在win7 64bit系统下的问题
之前delphi7在win7 64bit上运行是正常的,某天,大概是打了些系统补丁(一般通过360打的),就出现问题了:1、delphi本身退出时,会崩溃。把几个设计包不安装后,问题消失;2、之前一个project,使用runtimepackage编译的,exe退出时也会崩溃,但在测试路径完全相同的情况下,不是每次都会。追踪发现是在unloadpackage-->freelibrary原创 2013-01-10 08:24:30 · 6048 阅读 · 0 评论 -
Delphi XE3初体验(一)
Embarcadero® Delphi® XE3 Version 17.0.4625.53395FMI类库不见了,XE2有的4种FireMokey专案3D/HD/iOS 3D/iOs HD,现在变成FireMonkey Desktop Application/Metropolis UI Application两种。是把原来给iOS用的FMI合并到FMX中了吗?TContainedActio原创 2012-11-13 22:17:25 · 3137 阅读 · 1 评论 -
RAD Studio XE2试用体验(1)
听说RAD Studio XE2发布了,下载了30天试用版来测试,版本号是:16.0.4256.43595试用版下载:https://downloads.embarcadero.com/free/rad_studioDelphi XE2介绍:http://edn.embarcadero.com/article/41595What's new in RAD Studio XE2原创 2011-09-06 14:02:43 · 2067 阅读 · 0 评论 -
DCOM在windows 2008 Server的配置
delphi7开发的DCOM服务器是32位的,注意以下问题:1、控制台怎么找不到我的DCOM服务?当部署到windows 2008 Server 64bit时,直接在控制台是找不到你的DCOM服务程序的。需要用MMC -32启动32位的控制台程序,然后在菜单文件-添加/删除管理单元,选择“组件服务”。然后在“控制台根节点”-组件服务-计算机-我的电脑-DCOM配置,找到你的DCOM服务。原创 2012-08-10 11:52:35 · 6245 阅读 · 0 评论 -
通过挂钩API函数给加了保护的应用程序内嵌补丁
http://www.pediy.com/kssd/pediy08/pediy8-793.htm通过挂钩API函数给加了保护的应用程序内嵌补丁原著:SUB Z3R0主题:Spirit Of The Wind论坛:Seek'n Destroy TeaM 2oo6目 录壳的原理和内嵌补丁的原理 ……………………………………………2简易的挂钩方法 ………………………转载 2012-05-09 10:40:33 · 1365 阅读 · 0 评论 -
Delphi各个版本的编译指令
两种方式使用版本编译指令:1、{$IFDEF VER210}............{$ENDIF}2、{$IF CompilerVersion>=18.5}//some code only compiled for Delphi 2007 and later{$IFEND}http://delphi.wikia.com/wiki/Borland_Compiler_Conditio转载 2012-04-06 08:13:13 · 2240 阅读 · 1 评论 -
Delphi从应用程序资源中直接执行dll(不用先把dll存到磁盘上)
http://www.delphifeeds.com/go/f/86025?utm_source=feedburner&utm_medium=email&utm_campaign=Feed%3A+delphifeeds+%28DelphiFeeds.com%29BTMemoryModule下载地址:http://code.google.com/p/memorymodule/downloads/转载 2011-11-08 08:38:15 · 2978 阅读 · 0 评论 -
ADO MarshalOptions与序列化
MarshalOptions看说明,取值moMarshalModifiedOnly时,在序列化接口时只会传回异动的资料到中间层。但是要注意一下几点:(1)、要在TADODataSet Open后,设置moMarshalModifiedOnly才有效,Open前,如设计时,原创 2011-08-09 14:01:46 · 1241 阅读 · 0 评论 -
通过CrossTalk在Delphi中使用ADO.Net(1)
atozed这个公司,做了个新项目(indy也是他们搞的),企图在Native与.Net中架起一个桥梁,让Delphi可以使用.Net的元件,地址在:http://www.atozed.com/CrossTalk/index.EN.aspx因为ADO2.8后,MS不再维护原创 2011-08-31 14:01:55 · 1890 阅读 · 0 评论 -
3G无线宽带上网卡测试
拿到一个中国电信的3G上网卡,插到USB插口上,安装驱动后,同时有一个连接管理软件,界面上列出了3个连接方式:1、无线宽带(WLAN)2、无线宽带(3G)3、无线宽带(1X) 使用2、无线宽带(3G)连接。不需要用户名和密码。速度显示的是3.1M,可以上网了,速度还可以,感觉比家里快点。 作为客户端,去连接公司的ERP系统,运行正常。 获得的IP是114.81.原创 2010-01-22 17:14:00 · 1068 阅读 · 0 评论 -
实时系统的资料接收与处理(2)
上篇文章中,我用了一个TCriticalSection来保护数据队列,避免了多线程时可能出现的访问冲突。针对工作线程TSocketBufferThread发现队列里面空空如也时,如何办的问题,我是用信号量FEvent:TSimpleEvent来处理。如果不处理,那么等于一直在扫面队列,CPU会占很高。能不能用Sleep呢?Sleep能降低CPU占用率,但是Sleep就是睡觉了,不干活,原创 2010-01-22 18:01:00 · 766 阅读 · 0 评论 -
实时系统的资料接收与处理(1)
生产线上的设备一直向服务器发送数据,服务器处理这些数据,回馈,保存数据库......服务器可能处理速度比较慢(或者说相对设备发送的数据来说比较慢),来不及处理接收到的数据,数据难免丢失,怎么办?1、调大网卡的缓冲区;参考http://blog.csdn.net/acrodelphi/archive/2007/12/13/1933482.aspx2、购买更强大的服务器,提升处理能力;原创 2010-01-14 18:16:00 · 785 阅读 · 0 评论