一,框架简介1,本套框架主要是用来开发企业应用系统如:erp ,mes,hrms,进销存等制造业内部应用系统;跟网上 常见的delphi中间件相比,功能更丰富,开发便捷。...若用来开发一些几千上万的高并发,垮平台 ,实时高效的系统,可能需要自己优化下代码。...3,本套源码适合想学Delphi三层 并想开发一些企业内部应用系统的人或一直用二层开发想转三层的人。网上很多所谓的delphi中间件,其实是一个数据库连接转发器。...二,开发环境1,操作系统:windows7以上; IDE: delphi xe以上版本,基于data snap架构。...2,服务中间件:64位3,本发布版编译 IDE为delphi 11三,测试客户端使用配置1,创建名为ETU的数据库2,进入DB文件夹->执行ETU里面的slq(ms sql)创建数据。
RTTI是Delphi的组件能够融合到IDE中的关键。它在IDE中不仅仅是一个纯学术的过程。 由于对象都是从TObject继承下来的,因此,对象都包含一个指向它们的RTTI的指针以及几个内建的方法。...假定把AnObject看成是一个TEdit派生类型,并想要改变它所包含的文本,用下列代码: (AnObject as Tedit).text := 'wudi_1982'; 能用比较运算符来判断两个对象是否是相兼容的类型...第一个地方是DELPHI的IDE,这在前面已提到过。通过RTTI,IDE就会知道你正在使用的对象和组件的任何事情。实际上,不只是RTTI,但为了这个讨论,我们只谈RTTI方面。...在观看此例子之时,建议你看看typinfo.pas中的内容(DELPHI安装目录下/source/rtl/common/TypInfo.pas); 下面的例子主要分为两部分,界面上半部分,主要演示通过rtti...窗体文件如下:代码如下: object Form1: TForm1 Left = 150 Top = 161 Width = 639 Height = 372 Caption = '
unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, G...
先上相关资源的下载吧: python4delphi: 主页: http://code.google.com/p/python4delphi/ 下载: svn checkout http://python4delphi.googlecode.com...然后在memInput中输入Python代码: Result.Value=int(Num1.Value)+int(Num2.Value) 在执行按钮中填加代码: pyEngine.ExecStrings...(memInput.Lines); 当然,可以直接执行上面的Python代码....这样,我们就完成了Delphi传递参数到Python,Python执行完毕后将结果再返回给Delphi的演示.好了,我们可以好好利用Python,将它很好地嵌入到Delphi中了....在Delphi中写下面的代码: var PyModule: variant; ....
事实上Delphi中所有的元件都是从一些共同的祖先类 继承下来的,利用类的可继承性,您可以编写您自己的类元件,并把它加到Delphi的环境中去。...举例说明,我们在Delphi的可视环境下 建立一个表单窗口时,它实际上是创建了一个从TForm类中继承下的类类型。如果仔细看Delphi为您生成 的代码,你可以完全看到上面的各个规则是如何被实现的。...从功能上讲,虚拟方法和动态方法几乎完全相同,只不过虚拟方法在调用速度上比较愉,但代码长度稍 长,而动态方法在调用速度上稍慢而在代码长度上短一此.一般来说,在虚拟和动态之间还是选择使用 虚拟为好。...这句话的意思是首先调用基类的构造来初始化基类的字 段,接下来的代码才是初始化派生类的字段,当然也可以重新对基类的字段赋值。...),这样, Delphi会为您自动加上适当的 Read和Write字句,一般情况下您根本不必修改它加入的任何代码。
前言 我们做打印小票的时候除了直接对端口发送指令的方式,还有就是调用打印机驱动打印的方式,在Delphi中想要用驱动打印的方式就可以用到TPrinter类 TPrinter类介绍 TPrinter类中封装了...TPrinter: ---- 代码演示 //你必须先得到打印机的实际尺寸: var pointx,pointy:integer; pointx:=getdevicecaps(printer.handle
是个Delphi写的程序,无壳,程序要求把"OK"和"Cancella"按钮隐藏掉,以便看到 logo; 因为这是Delphi写的程序,所以用专业Delphi反编译工具Dark分析一下 ?...以上代码先检查Cancella按钮是否隐藏,如果是就将ok按钮激活,否则检查用户名和密码是否匹配,匹配就激活按钮,否则禁用,关键call的代码如下: 00442E04 /. 55...接下来看右边的按钮单击事件,代码如下: 00442A3C /$ 55 push ebp 关键call 00442A3D |. 8BEC...C3 retn 以下代码检查用户名与密码是否满足条件,如果满足就隐藏Cencela按钮并且激活OK按钮; 00442AF4 /$ 55 push ebp...C3 retn 从这个代码里可以看到,在后面有一个和某个字符串对比的call,如果用户名是这个字符串就可以通过了,而这个字符串是上面的循环中根据密码字符串计算得到,因此只要输入的用户名和密码对应就可以了
1 unit Unit1; 2 3 interface 4 5 uses 6 Windows, Messages, SysUtil...
前言 最近在做一个Delphi的对接第三方支付的接口,接口签名机制模仿微信的签名方式,把参数按ascii码进行排序后再加上key进行md5的加密,因为调用接口的的Post里面的参数是TStrings类型的...实现代码 ---- function GetSign(Params: TStrings): string; var tmpParams: TStringList; str: string;...str; finally tmpParams.Free; end; end; ---- 上面的方法就是实现排序后的Tstrings生成的字符串,然后把这个生成的字符串进行MD5的加密,delphi
本次知行软件为汽车电缆行业某客户提供EDI的技术服务,是同时和三位国外贸易合作伙伴进行EDI对接,在双方的共同努力下,最终成功对接了Nexans, KSD, Delphi三位贸易合作伙伴。...不过也不是完全相同的,例如报文标准存在不同,Delphi使用的报文标准是EDIFACT,而KSD和NEXANS使用的报文标准是VDA标准,这种标准经常用于德国汽车行业。...在进行本次EDI项目实施的时候,我们按照客户要求,将项目以紧急程度分出了优先级,先进行的是Delphi项目的实施,然后进行KSD和Nexans项目的实施。...本文中,我们以Delphi的需求为主,详细聊一聊项目的需求和实施过程中遇到的问题。 项目需求 Delphi EDI项目是Delphi发起的需求。...Delphi发送的DELJIT长期需求预测,并将DELFOR中确认要货的信息作为订单处理,进行发货,发货之后将发货信息回传给Delphi,Delphi根据发货通知进行收货。
前言 delphi7中原本自带的一个Tmediaplayer控件,但是发现有不少视频是无法播放的,于是就想到了用windowsmediaplayer来进行播放。...安装 在Delphi7中选择“Component ——Import ActiveX Control...”菜单,会弹出“Import ActiveX0”窗口。...窗口大小问题 在DELPHI中使用微软的WindowsMediaPlayer ActiveX控件的时候,如果想让控件随窗口大小一起改变, 最常用的方法就是设置控件的Align属性,但是你会发现,对于ActiveX...TLocOleCtrl (WindowsMediaPlayer1).OnPosRectChange (Rect (0, 0, ClientWidth, ClientHeight)); ---- 代码方法
{ Raw 数据包 Sender 使用:Delphi + Winsock 2 描述: 通过使用Raw sockets我们可以在internet上发送含有任意格式的数据包。
Delphi当年的迅速走红,是以其RAD快速开发吸引程序员的目光。这无疑是它最吸引人的优势,但同时也让人误以为delphi只是vb的高级版本,从而忽视了其面向对象的特性。...其实Pacscal发展到Delphi,已经完全具备了面向对象的所有特点:允许自定义类,类可以继承(单继承),允许方法重载/覆写,可以定义接口,类可以实现接口,允许定义静态方法(即class方法),虚方法...,抽象类...等等,对于delphi怀有偏见的朋友,你还会怀疑delphi的面向对象能力吗?...下面是一些演示代码: 1.先定义一个基类TPeople unit UPeople; interface type TPeople = class(TObject) private
1、说明 最近加入了一个项目组,使用的开发工具是delphi6,想想又要开始搞这个工具有点小忧伤,但没办法谁让咱就是个打杂的尼。。。...调用上面那句代码后,cellRect就会计算出文本显示的矩形大小了。同样就得到了宽高。
1.把WSDL的URL地址放到了HTTPRIO的WSDLLocation参数中,然后选择service和port 2.最近一个项目用到了delphi调用C#写的web服务的功能。...先测试了N次都不成功,通过跟踪发现delphi根本没传过来任何值,通过查资料发现VS2005 默认是用的 SoapDocumentProtocol而Delphi 是使用的 SoapRpcProtocol...服务代码: [WebMethod] public int UploadFile(byte[] fs, string FileName) { try { ///定义并实例化一个内存流,以存放提交上来的字节数组...fs, 0, fs.Length); f.Close(); f = null; return 1; } catch { return 2; } } delphi...客户端代码: procedure TFrmUpLoad.btn2Click(Sender: TObject); function ReadFile(fileName:string): TByteDynArray
其实就是代表分了几种情况,都可以表示,也相当于c里面的union _SYSTEM_INFO = record case Integer of ...
介绍SEH机制的文章很多,但基本都是C++的,关于Delphi的很少。最近项目需要,仔细阅读了VCL关于异常的处理,有些心得体会,希望和大家一起分享。...常见的如,delphi用到的 try exception end, try finally end,C++用到的_try{} _finally{} 和_try{} _except {} 结构都是对SEH...1 、 VCL 的顶层异常捕获 在DELPHI开发的程序中,出错的时候,我们很少看到出现一个错误对话框,提示点确定结束程序,点取消调试。而在VC或VB里就很常见,这是为什么呢?...try except end 的实现: PASSCAL代码(使用3个Sleep主要是用了观看汇编代码时比较方便隔开编译器生成的代码): try Sleep(1);...try finally end时,首先挂上SEH,如果代码正常执行,取消SEH,将try finally end后的代码地址压入堆栈,再finally里的代码运行完毕后,ret就返回到了该地址。
,确定 可以发布测试了 拷贝你的project1.exe,package1,windowSystem32目录下的vcl70.bpl,rtl70.bpl到一个目录,把他们拷贝到一个目录下,发布到一个没有delphi...有关面向接口编程 面向接口编程意味着系统中由一个管理程序,它组织许多的接口协调完成任务,它区别于旧式的系统在于被管理者是接口,而不是对象,这样的模式给了我们开发系统时松耦合的可能.但基于delphi...TIniConfig = class(TInterfacedObject ,IConfig) function GetConfig:string; end; end; 调用者的代码将不再是...例子 下面给出一个bplLoader类的代码例子,它可以被你的主程序调用,就是插件管理类 {******************************************************...,它的机制在delphi中特有,基于delphi我们能做的可能只有通过它来的最方便了 3.系统的设计对于哪怕是一个简单的系统来说,能更好的帮助你对产品有着更全面的思想.一定要做,那怕只是花两个圆呢.
动态链接库文件的扩展名一般是dll,也有可能是drv、sys和fon,它和可执行文件(exe)非常类似,区别在于DLL中虽然包含了可执行代码却不能单独执行,而应由Windows应用程序直接或间接调用。...调用动态库的两种方法 静态调用 这种用法的前提是在编译之前已经明确知道要调用DLL中的哪几个函数,编译时在目标文件中只保留必要的链接信息,而不含DLL函数的代码;当程序执行时,利用链接信息加载DLL函数代码并在内存中将其链接入调用程序的执行空间中...,其主要目的是便于代码共享。...代码演示 我们先创建一个动态链接库名称为PosPayIntf,最近几章介绍Delphi技术的都是用这个动态库,因为正好因为项目要做一个对接第三方微信支付宝的动态库。 ?...用静态调用动态库相对来说代码比较少,但是我们的动态库必须要放到和这个EXE的程序下,如果DLL文件没有存在,程序则无法运行,提示你少DLL文件。
sxwInvalidMethodName = 'Invalid method name'; 4.6.单元 4.6.1.NativeXml.pas unit NativeXml 这是执行读取和写入XML文档的一个小巧的Delpi代码...您可以使用此代码从文件、流或字符串中读取XML文档,。在装载过程中,产生可用于显示加载进度的事件。 注:任何外部编码(ANSI,UTF16等)转换为一个内部编码是ANSI或UTF8。... 版本 见下文版权所有(c)2003-2010 Simdesign BV的贡献者(补):斯特凡Glienke 首先在所附LICENSE.txt许可条件下,它不允许在任何情况下出版或复制这个代码...首先在所附LICENSE.txt许可条件下,它不允许在任何情况下出版或复制这个代码! 该软件是基于一个分布式“AS IS”,没有任何明示或暗示的保证。