
delphi
文章平均质量分 72
Channels_net
这个作者很懒,什么都没留下…
展开
-
多线程技术在Delphi数据库编程中应用(1)
引言在传统上,并发多任务的实现采用的是在操作系统级运行多个进程,由操作系统按照一定的策略(优先级、循环等),调度各个进程的执行,以最大限度的利用计算机的各种资源。在这种实现方法中最基本的调度单位是操作系统级上的进程。由于各个进程拥有自己独立的运行环境(寄存器和地址空间等)。进程与进程之间的耦合关系差,并发性粒度过于粗糙,并发实现也不太容易。所以,除非特殊需要,一般的应用设计都不采用这种技术。为了克转载 2006-04-20 10:43:00 · 779 阅读 · 0 评论 -
SIP即时消息(RFC3428)
SIP即时消息(RFC3428) 收藏 即时消息(IM)指的是近似实时的消息交互。即时消息通常很短,虽然并不要求这样。IM通常用于会话模式,也就是说,消息的交互是一来一回的,并且很快,近似于交互式的会话。 提出了MESSAGE方法,扩展了SIP协议以传送IM消息。由于MSEEAGE是SIP消息,所以它继承了SIP协议所有的路由和安全特性。MESSAGE用MIME格式的bo转载 2009-04-21 17:04:00 · 561 阅读 · 0 评论 -
STUN检测NAT类型原理(转)
STUN检测NAT类型原理(转) STUN是RFC3489规定的一种NAT穿透方式,它采用辅助的方法探测NAT的IP和端口。毫无疑问的,它对穿越早期的NAT起了巨大的作用,并且还将继续在ANT穿透中占有一席之地。STUN的探测过程需要有一个公网IP的STUN Server,在NAT后面的UAC(User Agent Client)必须和此Server配合,互相之间发送若干个UDP数据包。UDP原创 2009-04-29 16:53:00 · 1367 阅读 · 0 评论 -
TCP中有一个Keep-alive的机制可以检测死连接
在TCP中有一个Keep-alive的机制可以检测死连接,原理很简单,TCP会在空闲了一定时间后发送数据给对方: 1.如果主机可达,对方就会响应ACK应答,就认为是存活的。 2.如果可达,但应用程序退出,对方就发RST应答,发送TCP撤消连接。 3.如果可达,但应用程序崩溃,对方就发FIN消息。 4.如果对方主机不响应ack, rst,继续发送直到超时,就撤消连接。这个时间转载 2009-05-03 20:50:00 · 7572 阅读 · 0 评论 -
RTP 与RTCP 解释
RTP协议是real-time transport protocol的缩写,被设计来传输流媒体数据,有着广泛的应用,其它相关介绍自己去看RFC,我不打算讨论这些无聊的概念性的东西。 (1)了解RTP 可以说,RTP协议不依赖于底层协议,也就是说,它是独立的协议。而一般的,由于UDP包的快速、时实性高的特点,它通常和UDP结合在一起,作为UDP的上层载体数据的形式传播。转载 2009-05-13 13:33:00 · 3369 阅读 · 4 评论 -
表达式计算函数
function GetExpressionValue(ExpressionStr: string; var E: string; Rvn: boolean = false): extended;{///////////////////////////////////////////////////////////////////////////////转载 2009-06-25 15:11:00 · 591 阅读 · 0 评论 -
防调试单元IsDebbuged.pas
(转)防调试单元IsDebbuged.pas unit IsDebbuged;interfaceusesWindows;function PD_PEB_BeingDebuggedFlag(): Boolean;function FD_PEB_NtGlobalFlags(): Boolean;function FD_Heap_HeapFlags(): Boolean;function FD_Heap转载 2010-01-26 12:35:00 · 392 阅读 · 0 评论 -
Gexperts 使用
http://delphi.sharpplus.com/Delphi_Old/gexperts.htm转载 2010-06-18 14:17:00 · 875 阅读 · 0 评论 -
一个xml解析程序
按照xml 设计规范来讲,xml层数是不固定的,但是在实际应用中,层数是有限多个,但是子节点个数是不固定的。 var str, OType: string; node_ordds_feed, node_Books, node_book: IXMLNode; node_Sports, node_Sport, node_Category, node_Category_l, n原创 2012-09-04 16:25:55 · 473 阅读 · 0 评论 -
一个简单(搜索EMail)的蜘蛛程序
unit UIDTcpClientThread;interfaceuses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, IdBaseComponent, IdComponent, IdTCPConnection, IdTCPClient, IdHTTP, IniFi原创 2009-04-13 16:07:00 · 807 阅读 · 0 评论 -
用 idhttp 取的天气预报
function TForm1.GetWeatherFromWeatherComCnWap(City: string): string; function StrToHexStr(const s: string): string; var temps: string; I: Integer; begin for I := 1 to Length(s) do tem原创 2009-03-23 17:32:00 · 380 阅读 · 0 评论 -
多线程技术在Delphi数据库编程中应用 (3)
用多线程实现航班优化编排航班优化编排考虑的因素多,涉及到的航班数据量大,分析、优化过程较复杂,需要进行大量计算, 同时产生大量中间数据,考虑到各航班之间可以独立进行分析,我们采取了多线程方法来提高优化速度。预先将航班分成了三组,用三个线程同时实现。首先定义了OptimizeThread,并由OptimizeThread派生出ScheOptimizeThread,再分别对OptimizeThread转载 2006-04-20 10:45:00 · 682 阅读 · 0 评论 -
多线程技术在Delphi数据库编程中应用 (2)
1、线程的创建笔者利用Delphi语言进行了程序的开发和编写, 该语言的优点之一是它有一整套线程同步方法,可以很方便地使用。一个进程的主线程是由操作系统自动生成,如果要让一个主线程创建额外的线程,在WinAPI中,可以调用CreateThread来完成。在Delphi中,所有的线程类可以从TThread类派生得转载 2006-04-20 10:44:00 · 827 阅读 · 0 评论 -
Format 用法
首部 function Format(const Format: string; const Args: array of const): string; $[SysUtils.pas 功能 返回按指定方式格式化一个数组常量的字符形式 说明 这个函数是我在Delphi中用得最多的函数,现在就列举几个例子给你个直观的理解转载 2007-06-26 08:53:00 · 812 阅读 · 0 评论 -
MemProof教程
MemProof教程简介 MemProof(内存清道夫)是AutomatedQA出品的一款非常不错的检测内存泄漏和资源泄漏的免费调试工具,适合于WIN32平台下使用DELPHI/C++ BUILDER开发的应用程序。利用它可以方便的查找出一些忘记释放的指针以及资源。它通过在调试模式下运行目标程序,监视程序的创建和释放操作,以达到检测资源泄漏的效果。监测过程中它会根据资源类型计数转载 2008-04-14 13:34:00 · 633 阅读 · 0 评论 -
基于cmpp协议的超长短信格式 [转贴 2008-01-10 17:39:07]
基于cmpp协议的超长短信格式 [转贴 2008-01-10 17:39:07] 基于cmpp协议的超长短信格式//当短信超过70个汉字时短信的第一部分E0 00 00 00 //4byte 数据总长度05 00 00 00 //4byte 命令号3F 38 0B 01 //4byte转载 2008-08-18 15:54:00 · 1726 阅读 · 1 评论 -
Delphi之通过崩溃地址找出源代码的出错行
一 什么是MAP文件 什么是 MAP 文件?简单地讲, MAP 文件是程序的全局符号、源文件和代码行号信息的唯一的文本表示方法,它可以在任何地方、任何时候使用,不需要有额外的程序进行支持。而且,这是唯一能找出程序崩溃的地方的救星。 如果要查找代码行号,需要使用下面的公式做一些十六进制的减法运算: 崩溃行偏移 = 崩溃地址(Crash Address)转载 2008-05-28 11:22:00 · 621 阅读 · 0 评论 -
TCP协议连接过程详解
1、建立连接协议(三次握手) (1)客户端发送一个带SYN标志的TCP报文到服务器。这是三次握手过程中的报文1. (2) 服务器端回应客户端的,这是三次握手中的第2个报文,这个报文同时带ACK标志和SYN标志。因此它表示对刚才客户端SYN报文的回应;同时又标志SYN给客户端,询问客户端是否准备好进行数据通讯。 (3) 客户必须再次回应服务段一个ACK报文,这是报文段3.转载 2008-05-28 11:25:00 · 795 阅读 · 0 评论 -
Socket Hook
//-------------------------------------------------------------------------------------------------Hook.dpr library Hook;uses SysUtils, windows, Messages, APIHook in APIHook.pas;type PDat原创 2009-02-16 16:53:00 · 584 阅读 · 1 评论 -
进程连接端口查看器
进程连接端口查看器unit Unit1;////进程连接端口查看器//作者:yeye55//2008年2月25日////如果你转载本文件中的代码,请注明出处和作者并保证其完整性//如果你修改了本文件中的代码,请注明修改位置和修改作者////本文件最早在http://www.programbbs.com/bbs/上发布//interfaceuses Windows, Messages, SysUt转载 2008-12-24 12:27:00 · 1528 阅读 · 0 评论 -
得到串口
function GetComPortList: TStrings;var Reg: TRegistry; sts1,sts2: TStrings; i: Integer; RegPath: string; //×¢²á±íÖдæ·Å´®¿Ú·¾¶begin Result := nil; Reg := TRegistry.Create; try sts1 := TStri转载 2009-03-17 12:46:00 · 399 阅读 · 0 评论