
delphi
文章平均质量分 80
iteye_19488
这个作者很懒,什么都没留下…
展开
-
delphi读取XML示例
procedure TfrmMain.btn1Click(Sender: TObject);var TextXML:IXMLDocument; XmlRoot:IXMLNode; NodePos:IXMLNode; b:string; x,y:double; LocateInfo:TLocateInfo;begin TextXML:=TXMLDoc...2008-01-07 14:53:00 · 601 阅读 · 0 评论 -
查看内存数据的函数
unit Unit1;interfaceuses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls;type TForm1 = class(TForm) Button1: TButton; Button...原创 2009-12-14 17:40:07 · 185 阅读 · 0 评论 -
子网地址与广播地址的算法
子网地址的算法:用IP地址 AND 子网掩码 IP地址与子网掩码进行和运算.广播地址的算法:( NOT 子网掩码) OR IP地址 子网掩码进行非运算的结果再与IP地址进行或运算。 class function TConvertUtil.SubnetRange(AIpMask, AIpStart: str...2009-12-15 16:10:31 · 671 阅读 · 0 评论 -
高斯坐标经纬度互相转换算法(Delphi)
这个程序是根据网上找到的VC代码改写而成的Delphi库单元,经验算,比较准确,支持西安80及北京54。 代码及使用方法如下:unit Translate; { 经纬度坐标与高斯-克吕格投影坐标的互算。 时间:2009-05-11 博客:http://wallimn.iteye.com 转载请保留此信息 } interface uses Math; ...原创 2009-12-18 11:18:38 · 3232 阅读 · 0 评论 -
mapx标注之详解
以前做gis的时候,没怎么用到标记,今天终于接触到标记这方面的东西,做了个demo测试了一下: 首先写了个操作mapx的单元,其中有个函数:function TMapModule.CreateTempAnimationLayer(var currentMap: TMap; layerName: string): CMapXLayer;var layerInfo:CMap...原创 2009-12-31 15:25:56 · 611 阅读 · 0 评论 -
delpi中的RTTI初试
java中的反射机制使我们能够在运行期间获取运行期类的信息,那么在delphi中有没有这样的功能呢?答案是有,实现这种功能的机制在delphi中叫做RTTI,废话少说,先来一段demo: 1.先定义一个demo类,注意这个类必须要以TPersistent为基类,代码如下:unit Unit2;interface{ TDemo }uses Classes ;...2009-05-03 01:14:55 · 143 阅读 · 0 评论 -
Delphi中的接口类型转换
今天做delphi的一个项目时,用到了接口转换方面的东东,经过数次失败后,终于成功,现将笔记记录如下: 首先声明一个接口:unit UntPluginIntf;interfaceuses MapXLib_TLB;type IMapAware = interface(IInterface) function GetMapX():TMap;...2009-05-10 12:43:47 · 410 阅读 · 0 评论 -
截取程序的网络封包(Delphi Hook API)
有时候我们需要对其它应用程序发送和接收的网络数据进行拦截,比如要对IE发送的**头进行分析,得到请求的地址等.这次我们可以用一些例如WPE, Sniffer之类的工具来达到目的.但是工具功能有限,要想实现更强大的功能,还是我们自己动手来DIY吧. 拦截网络数据封包的方法有三种,一是将网卡设为混杂模式,这次就可以监视到局域网上所有的数据包,二是HOOK目标进程的发送和接收的API函数,第三种方法是自...原创 2009-07-01 09:31:42 · 467 阅读 · 0 评论 -
后台调用外部程序的完美实现
最近在做的一个软件,其中有一部分功能需要调用其它的软件来完成,而那个软件只有可执行文件,根本没有源代码,幸好,我要做的事不难,只需要在我的程序启动后,将那个软件打开,在需要的时候,对其中的一个文本矿设置一些文字,再点击一个按钮就可以了。说到这里,相信你也有了对该功能的一些初步设想了,没错,其基本思路就是:1)调用CreateProcess()打开目标程序。2)用FindWindow()找到目标程序...原创 2009-07-12 22:21:24 · 207 阅读 · 0 评论 -
JSON 之 SuperObject : 访问
测试数据提前加入 Memo1 中:{ "name": "张三", /* 注释 */ "age": 33, "sex": true, "weight": 123.456, "tel": ["86-1111111", "86-2222222"], "addresses":{"addre原创 2009-12-14 16:27:59 · 146 阅读 · 0 评论 -
delphi之完美Splash方案
前言:网上有很多介绍delphi创建闪屏的代码,大多只是在程序开启前显示一个闪屏,但是却没有说如何在闪屏上显示程序加载的进度,于是笔者有意思介绍一下这种闪屏方式。 1.创建一个窗体(TfrmSplash),放入一个TImageBox,加载一幅图片,调整好TImageBox与图片的大小,然后在其上放入一个TLabel,name=LblStatus,用于显示加载进度文字。然后将TfrmSpla...2009-11-20 17:29:13 · 163 阅读 · 0 评论 -
jcl之TStringHashMap用法
1.当然是包含头文件: usesJclStrHashMap 2.声明:FCacheHash: TStringHashMap; 3.创建实例:FCacheHash := TStringHashMap.Create(CaseInsensitiveTraits, 255); 4.加入item: FCacheHash.Add(AIp,...2009-11-02 15:59:05 · 185 阅读 · 0 评论 -
delphi中无类型文件读写
unit Unit1;interfaceuses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls;type TForm1 = class(TForm) Memo1: TMemo; Button1: TButton; ...原创 2009-01-21 10:48:56 · 334 阅读 · 0 评论 -
窗体抖动的实现
现在的QQ,MSN都拥有窗体抖动的功能,其实要实现它并不困难窗体之所以会表现为“抖动”,其实质就是窗体的坐标在变化。与是就有了下面这些代码:procedure TForm1.Button1Click(Sender: TObject);vari: Integer;t: Integer;l: Integer;seed: Integer;begint:=Self.Top;l:=self.Left;see...2009-02-12 13:11:18 · 137 阅读 · 0 评论 -
DLL入口修复模板
这是一个代码模板,以前集成在RarnuWizard中,由于Delphi版本更新而无法再使用现提取其中的DLL入口修复模板给大家共享。library { library name };usesSysUtils,Forms, Classes;{$R *.res}var DllApp: TApplication;DllScr: TScreen;procedure DLLUnloadProc(Reason...2009-02-12 13:12:01 · 145 阅读 · 0 评论 -
删除整个目录
以往删除目录时,都需要先用递归删干净目录下的文件和子文件夹,这样做的时候,如果文件数量大,那么删除会非常慢于是找了个方便一点的方法,直接使用API将目录删除代码如下:function DelDirectory(const Source: string): boolean;var fo: TSHFILEOPSTRUCT;begin FillChar(fo, SizeOf(fo), 0)...2009-02-12 13:26:00 · 163 阅读 · 0 评论 -
把汉字转换为拼音
function ChineseCharToPinyin(w: WideString): string;varvGuid: TGUID;vFELanguage: IFELanguage;vError: Integer;vCaps: DWORD;vOutput: PMORRSLT;vPinYin: WideString;S: WideString;I: Integer;iMonoRubyPos: W...2009-02-12 13:29:16 · 191 阅读 · 0 评论 -
发一个indy10用163发送邮件的例子
function TForm1.SendMail(Const SMTPServer: String; Const SMTPPort: WORD; Const UserName, PassWord, MailTitle: String; Const MailBody: TStrings; Const FormAddress, ToAddress: Stri...2009-02-20 13:43:27 · 292 阅读 · 0 评论 -
数据库->树型结构(TTreeView篇)
1.首先看一下我的数据库结构: id : int group_name : int parent_id : int 不用解释,相信大家一看就明白。 2.delphi中新建一个datemodel,命名为dm,和一个窗体frmMain 在dm中放入tadoconnection,...2009-10-16 15:59:40 · 189 阅读 · 0 评论 -
数据库->树型结构(TVirtualStringTree篇)
1.数据库结构与我的上一篇文章数据库->树型结构(TTreeView篇)完全相同 2.我的创建TVirtualStringTree树结构的单元文件代码unit BuildVirtualTreeUnit; interface uses DB, ADODB, ComCtrls,Dialogs,VirtualTrees; // 定义树结点对数据库表记录对应...2009-10-16 17:12:05 · 599 阅读 · 0 评论 -
VirtualStringTreeView使用
*自定义结点结构: PTagCustomListItem = ^TTagCustomListItem ; TTagCustomListItem = record Name:string; Id:Integer; end; *初始化: VST.NodeDataSize := SizeOf(TTagCustomListItem); VST...2009-10-13 18:40:28 · 389 阅读 · 0 评论