2012年3月19日

摘要: ExtractFileName(OpenDialog1.FileName)C:\Documents and Settings\Administrator\桌面\1.txt 结果为 1.txt引申:function ExtractFilePath(const FileName: string): string;function ExtractFileName(const FileName: string): string;返回指定文件的文件名及扩展名vars:string;begins:=ExtractFileName('D:\Program Files\Borland\Delphi7\ 阅读全文
posted @ 2012-03-19 14:53 程序生涯走天下 阅读(400) 评论(0) 推荐(0)

2012年3月16日

摘要: 一. 接口说明//开始保护处标记(对应于功能设置:反调试、内存保护等等)VMProtectBegin(const char *);//开始虚拟化代码处标记(包括保护设置)VMProtectBeginVirtualization(const char *);//开始变异代码处标记(包括保护设置)VMProtectBeginMutation(const char *);//开始虚拟+代码变异标记处VMProtectBeginUltra(const char *);VMProtectBeginVirtualizationLockByKey(const char *);VMProtectBeginU. 阅读全文
posted @ 2012-03-16 01:55 程序生涯走天下 阅读(8347) 评论(0) 推荐(0)

2011年12月18日

摘要: BMDThread控件是一套相当成熟的线程控件,使用它可以让你快速的创建、管理线程。 可以到CSDN或者盒子上下载BMDThread控件。 下面我们用多线程模拟客户端发送文件的例子来简单认识一下它。 在窗体中放置一个TIDClient,TBMDThread,TBMDThreadGroup.三个TEdit,两个按钮(开始线程,结束线程),一个MEMO用于接受线程结果信息 功能:使用IDTCPClient向指定服务器发送文件,动态创建线程数量同步发送文件。开始创建我们的线程单元吧。 新建Unit,保存为ThreadUnit.pas。 在单元接口部分需要引用BMDThread 单元。为了方便... 阅读全文
posted @ 2011-12-18 17:28 程序生涯走天下 阅读(441) 评论(0) 推荐(0)