摘要: 首先点击File->New->Other-> Dynamic Link Libary把工程文件保存为:CalendarLib.pas 再创建一个Form并放入一个TMonthCalendar控件borderStyle属性设为:bsToolWindow保存为 DllFormUnit.pasunit DllFormUnit;interfaceuses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, ComCtrls;type TDllForm = class(T 阅读全文
posted @ 2012-02-19 21:18 TryHard 阅读(1342) 评论(1) 推荐(1) 编辑
摘要: 创建DLL文件 Delphi -> New->Other -> Dynamic link libraylibrary SimpleTestDll;uses SysUtils, Classes,Dialogs;//简单的一个例子procedure ShowDllMsg;begin ShowMessage('简单的一个例子');end;//两个数相加function Add(Num1,Num2:Integer):Integer;stdcall;begin Result := Num1 + Num2;end;{$R *.res}//提供名称给外部单元使用 然点编译成 阅读全文
posted @ 2012-02-19 19:13 TryHard 阅读(777) 评论(0) 推荐(0) 编辑
摘要: unit Unit2;interfaceuses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, ExtCtrls, Buttons;type TinfoForm = class(TForm) Label3: TLabel; ListClasses: TListBox; Panel1: TPanel; Label1: TLabel; Label2: TLabel; ListParent: TListBox; ... 阅读全文
posted @ 2012-02-15 13:12 TryHard 阅读(397) 评论(0) 推荐(0) 编辑
摘要: procedure TForm1.Button1Click(Sender: TObject);var Dir: TSearchRec; //文件结构begin if FindFirst(edit1.Text,faAnyFile,Dir) = 0 then begin repeat //是目录吗? //and 的作用是通过 "与" fadirectory 消掉Attr中的其它文件,只取留下faDirectory属性 //通过 or 可以添另其它属性 if(Dir.Attr and faDirec... 阅读全文
posted @ 2012-02-08 18:11 TryHard 阅读(894) 评论(0) 推荐(0) 编辑
摘要: StrUtils包含大多数字符串操作//类似 AAAA 类似于ABAAAfunction ResemblesText(const AText, AOther: string): Boolean; overload;function AnsiResemblesText(const AText, AOther: string): Boolean; overload;//包含 function ContainsText(const AText, ASubText: string): Boolean; inline; overload;function AnsiContainsText(const . 阅读全文
posted @ 2012-02-06 23:07 TryHard 阅读(1392) 评论(0) 推荐(0) 编辑
摘要: PosEx,Pos都是在一个字符串中搜索子串返回其索引值unit Unit1;interfaceuses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls;type TfrmStrDemo = class(TForm) Edit1: TEdit; ListBoxMatch: TListBox; btnPos: TButton; btnPosEx: TButton; procedure btnPosClick(Sender: ... 阅读全文
posted @ 2012-02-06 22:49 TryHard 阅读(1606) 评论(0) 推荐(0) 编辑
摘要: ;Program:Hello World;Author:TryHard;Date:2012/02/06SSEG: SEGMENT PARA STACK ;堆栈段 DW 256 DUP(?) ;256大小SSEG ENDSDSEG SEGMENT ;数据段 MESSAGE DB 'Hello',0DH,0AH,'$' ;0DH,0AH换行,以'$’结束DSEG ENDSCSEG SEGMENT ;代码段 ASSUME CS:CSEG, DS:DSEG,SS:SSEGSTART: MOV AX,D... 阅读全文
posted @ 2012-02-06 16:28 TryHard 阅读(238) 评论(0) 推荐(0) 编辑
摘要: TThread类 Thread类是Delphi语言提供的线程类,该线程类可以完成大多数的线程操作TThread类的属性 1.(1)FreeOnTerminate属性 当线程终止时是否自动删除线程对象.默认值为True;语法:property FreeOnTerminate: Boolean; 2 Priority属性 指定线程的优先级. property Priority: TTreadPriority; 3 ReturnValue属性 线程终止时,用该属性为其他线程传递一个返回值. 4 Suspended属性 指定线程是否处于挂起状态 5 Terminated 线程运行晨,如果... 阅读全文
posted @ 2012-02-05 21:56 TryHard 阅读(3068) 评论(0) 推荐(0) 编辑
摘要: 一、线程与进程的关系 一个应用程序可以存在多个进程实例,而一个进程实列内部又可以同时包含多个线程. 从理论上讲,线程是进程内的单个执行单元,它是Windows操作系统为CPU工作分配的一个最小单位. 线程主要由数据结构、堆栈和CPU寄存器组成.每一个线程都可以在它的进程中单独运行,并 保存自已的堆栈和寄存器的值。 线程的工作原理主要根据CPU的运行机制所决定的.当多个应用程序实例同时运行时.操作系统会为 每一个应用程序的实列,也就是一个进程分配虚拟空间和系统资源,并且CPU会按照程序的优先级为每一 个程序分配一个时间段,然后进程在自已的时间段内再为每一个纯生分配时间片, 这样线程玉会... 阅读全文
posted @ 2012-02-05 21:18 TryHard 阅读(333) 评论(0) 推荐(0) 编辑
摘要: procedure RegisterClasses(AClasses: array of TPersistentClass); AClasses是一个数组:每个类都通过调用RegisterClass注册到组件流中,删除注册的类调用UnRegisterClass(); function FindClass(const ClassName: string): TPersistentClass;ClassName:要查找的类名,返回TPersistentClass类型;如果查找的类不存在则触发一个exception信息,返回的类必须是从TPersistent派生的function GetClass( 阅读全文
posted @ 2012-02-05 17:21 TryHard 阅读(826) 评论(0) 推荐(0) 编辑