拦截其它程序的网络数据封包
摘要:有时候我们需要对其它应用程序发送和接收的网络数据进行拦截,比如要对IE发送的HTTP头进行分析,得到请求的地址等.这次我们可以用一些例如WPE, Sniffer之类的工具来达到目的.但是工具功能有限,要想实现更强大的功能,还是我们自己动手吧.拦截网络数据封包的方法有三种,一是将网卡设为混杂模式,这次就可以监视到局域网上所有的数据包,二是HOOK目标进程的发送和接收的API函数,第三种方法是自己实现一个代理的DLL.在这里我们使用HOOK API的方法,这样易于实现,而且也不会得到大量的无用数据(如第一种方法就会监视到所有的网络数据).下面是一个尽量简化了的API HOOK的模版,原理是利用消息
阅读全文
posted @
2011-06-11 13:16
°ι 、曲 终
阅读(988)
推荐(0)
SendMessage函数WParame详解
摘要:代码Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/--Windows是一个消息驱动式系统,SendMessage是应用程序和应用程序之间进行消息传递的主要手段之一,这里我搜集整理了SendMessage函数的详细参数介绍,以备自用。wMsg参数常量值:W...
阅读全文
posted @
2010-09-25 18:12
°ι 、曲 终
阅读(631)
推荐(1)
Delphi 下的各个进制转换函数
摘要:代码Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/--//十进制to二进制functionIntToBin(Value:LongInt;Size:Integer):String;vari:Integer;beginResult:='';fori:=Siz...
阅读全文
posted @
2010-09-25 17:58
°ι 、曲 终
阅读(675)
推荐(1)
delphi替换bmp图片中的颜色
摘要:工作中,经常需要将bmp图片中的某个颜色修改为另外一种颜色。比如:将图片中的所有白色均修改成灰色。平时都是拿画图板中的油漆桶工具一点一点的刷,费时又费力。(这么干好几年了 :( )今天抽空编了一个小软件,实现了这种功能。代码Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlight...
阅读全文
posted @
2010-09-21 20:56
°ι 、曲 终
阅读(649)
推荐(0)
delphi 2010破解完美无限制
摘要:【方式一】1. 用原来的安装程序卸除旧版;2. 准备如下“材料”:A.Delphi.Distiller.v1.85,参见seven_14(http://bbs.2ccc.com/topic.asp?topicid=344528)B.RAD Studio 2010 V14.3615 iso ,参见cndiablocn(http://bbs.2ccc.com/topic.asp...
阅读全文
posted @
2010-09-21 20:45
°ι 、曲 终
阅读(822)
推荐(0)
无标题窗体拖动
摘要:通 过 响 应“wm_NCHitTest” 消 息 来 移 动 窗 体。Windows 发 送“wM_NCHitTest” 消 息 来 确 定 鼠 标 操 作 是 否 发 生 在 窗 体的 客 户 区, 或 边 框 的 特 殊 区 上( 非 客 户 区)。如 果Windows 发 现 用 户 单 击 了 窗 体 标 题, 系 统 将 移 动 窗 体,...
阅读全文
posted @
2010-09-20 21:20
°ι 、曲 终
阅读(415)
推荐(0)
TStrings的一些技巧
摘要:TStrings是一个抽象类,在实际开发中,是除了基本类型外,应用得最多的。常规的用法大家都知道,现在来讨论它的一些高级的用法。先把要讨论的几个属性列出来:1、CommaText2、Delimiter & DelimitedText3、Names & Values & ValueFromIndex先看第一个:CommaText。怎么用呢?用代码说话:代码Code highl...
阅读全文
posted @
2010-09-20 21:15
°ι 、曲 终
阅读(361)
推荐(0)
Delphi多线程编程中的技巧
摘要:1)创建线程MsgThread := TMsgThread.Create(False) ; //创建并执行线程MsgThread := TMsgThread.Create(True) ; //创建线程后挂起constructor Create(CreateSuspended: Boolean); 中的参数CreateSuspended表示创建后是否挂起线程。(2)设置线程里没有设置循环执行的话,且...
阅读全文
posted @
2010-09-20 21:12
°ι 、曲 终
阅读(609)
推荐(0)
Delphi中线程类TThread 实现多线程编程
摘要:Delphi中有一个线程类TThread是用来实现多线程编程的,这个绝大多数Delphi书藉都有说到,但基本上都是对TThread类的几个成员作一简单介绍,再说明一下Execute的实现和Synchronize的用法就完了。然而这并不是多线程编程的全部,我写此文的目的在于对此作一个补充。线程本质上是进程中一段并发运行的代码。一个进程至少有一个线程,即所谓的主线程。同时还可以有多个子线程。当一个进程...
阅读全文
posted @
2010-09-20 21:07
°ι 、曲 终
阅读(6299)
推荐(1)
TreeView使用笔记
摘要:TreeView由节点构成,建树通过对TreeView.items属性进行操作。Items是一个TTreeNodes对象,这是一个TTreeNode集。一、针对TTreeNodes,也就是 TreeView.Items,有这些属性:1、count,节点个数。2、item[index] ,通过index得到节点。二、针对TTreeNodes,也就是 TreeView.Items,常用的添加节点的操作...
阅读全文
posted @
2010-09-20 20:52
°ι 、曲 终
阅读(281)
推荐(0)
使用BMDThread控件动态创建多线程示例
摘要:BMDThread控件是一套相当成熟的线程控件,使用它可以让你快速的创建、管理线程。 可以到CSDN或者盒子上下载BMDThread控件。 下面我们用多线程模拟客户端发送文件的例子来简单认识一下它。 在窗体中放置一个TIDClient,TBMDThread,TBMDThreadGroup.三个TEdit,两个按钮(开始线程,结束线程),一个MEMO用于接受线程结果信息 功能:使用IDTCPCli...
阅读全文
posted @
2010-09-20 20:44
°ι 、曲 终
阅读(734)
推荐(0)
delphi 防止程序双开 更好的 Best!
摘要:代码Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/--unitwdRunOnce;{********************************************brief:让程序只运行一次*autor:linzhenqun*date:2005...
阅读全文
posted @
2010-09-20 20:29
°ι 、曲 终
阅读(500)
推荐(0)
关于Delphi中预编译指令的使用方法
摘要:在Delphi中,也有与C相似的预编译指令,虽然该类指令只在当前的单个文件有效(也有可能是笔者未全面了解该类指令的真正用法),但是这一类指令对于进行多版本的制作工作(如从标准版中出学习版),确实有着相当不错的用途。 一.指令介绍:1.DEFINE指令:格式:{$DEFINE 名称} 说明 :用于定义一个在当前单元有效的符号(Symbol)。定义了 之后可以使用IF DEF和IFNDEF指令来判断该...
阅读全文
posted @
2010-09-20 20:16
°ι 、曲 终
阅读(244)
推荐(0)
Delphi 记录类型- 结构指针
摘要:转自:万一老师的 Delphi 博客[代码]
阅读全文
posted @
2010-09-20 20:04
°ι 、曲 终
阅读(341)
推荐(0)
Delphi多线程编程中的技巧(转)
摘要:1)创建线程 MsgThread := TMsgThread.Create(False) ; //创建并执行线程 MsgThread := TMsgThread.Create(True) ; //创建线程后挂起 constructor Create(CreateSuspended: Boolean); 中的参数CreateSuspended表示创建后是否挂起线程。 (2)设置线程里没有设置循环执行...
阅读全文
posted @
2010-09-20 19:59
°ι 、曲 终
阅读(258)
推荐(0)
多线程大串讲之二: 多线程同步的学习[1]
摘要:一、CriticalSection(临界区)临界区"(CriticalSection): 当把一段代码放入一个临界区, 线程执行到临界区时就独占了, 让其他也要执行此代码的线程先等等; 这和前面用的 Lock 和 UnLock 差不多; 使用格式如下:[代码]Delphi 在 SyncObjs 单元给封装了一个 TCriticalSection 类, 用法差不多二、等待函数 WaitForSing...
阅读全文
posted @
2010-09-19 16:47
°ι 、曲 终
阅读(299)
推荐(0)
多线程大串讲之一:CreateThread的学习
摘要:[代码]在 Windows 上建立一个线程, 离不开 CreateThread 函数;既然有建立, 就该有释放, CreateThread 对应的释放函数是: ExitThreadCreateThread 的最后一个参数是 "线程的 ID";既然可以返回句柄, 为什么还要输出这个 ID? 现在我知道的是:1、线程的 ID 是唯一的; 而句柄可能不只一个, 譬如可以用 GetCurrentThrea...
阅读全文
posted @
2010-09-19 16:26
°ι 、曲 终
阅读(1730)
推荐(0)
简单用CreateThread传递自定义参数
摘要:1. 声明一个Record类[代码]2. 线程函数像这样写[代码]3.写下传递过程呗[代码]好了,这样就可以传递到自己的参数了,如下图:
阅读全文
posted @
2010-09-19 15:26
°ι 、曲 终
阅读(874)
推荐(0)
WebBrowser中屏蔽弹出窗口
摘要:WebBrowser中有这样一个事件NewWindow2,其中有两个参数:var ppDisp: IDispatch; var Cancel: WordBool第一个参数是变参,用于指定新窗口第二个参数也是变参,用于控制是否可以触发NewWindow2事件,当我们浏览一个页面的时候,如果有弹出窗口的话,我们就可以用第一个参数,把弹出的窗口,截取到另一个WebBrowser里面了。ppDisp:=W...
阅读全文
posted @
2010-09-15 18:01
°ι 、曲 终
阅读(549)
推荐(0)