自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

想飞的鱼

hello world!

  • 博客(25)
  • 收藏
  • 关注

原创 【无标题】

aa

2022-02-25 07:32:38 150

原创 字符串截取

unit CutStr;interfaceuses Classes; type wd = record a : String; b : String; c : String; end;function cutin(StrSource,StrBegin,StrEnd:string):string;function cutout(StrSou

2015-10-22 13:43:13 664

原创 delphi数组

var MyArr: array[0..1, 0..2] of char;beginMyArr[0,0] := 'a';MyArr[0,1] := 'b';MyArr[0,2] := 'c';MyArr[1,0] := '1';MyArr[1,1] := '2';MyArr[1,2] := '3';MyArr[0,0] := Chr(0);Show

2015-10-22 13:40:06 935

原创 OllyDBG 入门系列(一)-认识OllyDBG

OllyDBG 1.10 版的发布版本是个 ZIP 压缩包,只要解压到一个目录下,运行 OllyDBG.exe 就可以了。汉化版的发布版本是个 RAR 压缩包,同样只需解压到一个目录下运行 OllyDBG.exe 即可:OllyDBG 中各个窗口的功能如上图。简单解释一下各个窗口的功能,更详细的内容可以参考 TT 小组翻译的中文帮助:反汇编窗口:显示被调试程序的反汇编代码,标题栏上的地

2013-01-11 01:33:20 491

原创 VC++编程实现镜像劫持

所谓的镜像劫持,就是在注册表的[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\ CurrentVersion\Image File Execution Options]处新建一个以杀毒软件主程序命名的项,例如Rav.exe。然后再创建一个子键“Debugger="C:\WINDOWS\system32\drivers\”。以后只要用户双击 R

2013-01-11 01:31:38 3017

原创 Delphi的学习笔记十五——数据库编程1

Delphi7中有许多对数据库操作的组件,他们因数据访问机制的不同而被分成四大类:1.BDE组件:使用Borland数据库引擎,它最擅长处理Paradox or dBASE表中的数据。但它的配置也是四个机制中最为复杂的;同时,BDE组件能与其它采用BDE组件的应用程序共享。在Delphi7的操作界面,我们能看到在BDE组件中包含Table(可以从数据库中读取数据给DataSource或者将

2013-01-11 01:30:59 645

原创 Delphi的学习笔记十四——接口2

接口的属性1.接口属性的定义{此接口声明了一个 Name 属性; 因为接口没有字段, read/write 都只能从方法} IMyInterface = interface function GetName:string; procedure SetName(val:string); property name:string read GetName wri

2013-01-11 01:30:27 277

原创 Delphi的学习笔记十四——接口1

1.接口命名约定I起头,类是T起头的。IMyInterface1 = Interface function Func1:Integer; function Func2:Integer; end;2.接口都是从IInterfacej继承的,若是从根接口继承,则可省略 {定义继承接口的类} TMyClass = class(TInterfacedObject,IMy

2013-01-10 18:48:30 306

原创 Delphi的学习笔记十三——属性1

首先我们来看一下属性的定义:TMyClass = class(TObject) private FName: string; procedure SetName(const Value: string); published property Name: string read FName write SetName; end;2、read、writ

2013-01-10 18:47:20 284

原创 Delphi的学习笔记十二——方法2

1.构造方法和析构方法我们都知道,构造方法是对象建立时调用的方法;析构方法是在对象销毁时调用的方法。例如:TMyClass = class(TObject) public constructor Create; {构造方法} destructor Destroy; override; {析构方法} end; 必须使用construc

2013-01-10 18:46:30 264

原创 Delphi的学习笔记十二——方法1

1.类的虚方法(virtual)和动态方法(dynamic)方法的定义:TMyClass = class procedure Proc1(x,y: Real); virtual; //虚方法 function Fun1(x,y: Real): Real; virtual; procedure Proc2(x,y: Real); dynamic; //动态方

2013-01-10 18:43:58 407

原创 Delphi的学习笔记十一——类4

1.类的方法参数可以分为四种(默认参数(传值)、var(传址)、out(输出)、const(常数))。这里需要注意的是var定义的参数,例如:{var参数是传址, 会被改变} function MyF2(var x: Integer): Integer; begin Inc(x); Result := x; end; Inc(x):表示对x的内存地址加1

2013-01-10 18:43:03 395

原创 Delphi的学习笔记十一——类3

1.类的继承继承类的定义{父类} TBase = class procedure msg1; end; {继承父类} TChild = class(TBase) procedure msg2; end; 对于子类与父类的使用与一般类的调用并没有特殊的区别,这里不再详述。在子类中,如果需要调用父类的方法,可以利

2013-01-10 18:41:11 290

原创 Delphi学习笔记十一——类2

1.结构与类都是自定义类型,结构可以直接使用,内存是自动管理;类对象需要创建才可以使用,并在使用完成后需要对其手动释放。例如type TMyRecord = Record d:TDate; end; TMyClass = class d:TDate; end; procedure TForm2.Button1Click(Send

2013-01-10 18:39:37 268

原创 Delphi的学习笔记十一——类1

1.类成员的可见性private //不可见 protected //派生类可见 public //可见 published //可见。用于运行时信息 automated //可见。用于兼容 2.类方法调用inherited(继承):就是调用父类的函数。如果不带参数就是默认调用父类的同名函数;如果

2013-01-10 18:10:35 373

原创 Delphi 的学习笔记十——数组

1.给动态数组添加元素type //定义数组类型 TOneArray = array of Integer; {动态数组添加一个元素} procedure AddArrayItem(var arr: TOneArray;x:Integer); begin //设置数组长度+1 SetLength(arr,Length(Arr)+1); Arr

2013-01-10 18:07:35 530

原创 Delphi的学习笔记九——汉字与区位码

在没有 Uncode 的时代, 用 256 个 ACSII 只是方便了英文, 其他文字怎么办?那时是各自为政的, 譬如中文就有: GB2312-80(国内简体)、Big5(台湾繁体)、HKSCS(香港繁体), 但它们互不兼容.GB2312(1980年) 后来升级到 GBK(1995年), 现在电脑上使用的是 GB18030(2000年), 这个系列是向后兼容的.区位码的概念

2013-01-10 18:05:05 500

原创 Delphi的学习笔记八——内存操作函数

给字符串分配指针,我们马上可以联想到有以下这些函数可供选择:GetMemAllocMemReallocMemFreeMemGetMemoryReallocMemoryFreeMemoryNewDisposeNewStrDisposeStrStrNewStrAllocStrDisposeGlobalAllocPtrGlobalFreePtrWideStrA

2013-01-10 18:02:11 545

原创 Delphi的学习笔记七——格式化输出函数(总结的很全面)

第一部分:var s: string;begin //指令类型 type s := Format('最大整数是: %d; 最小整数是: %d',[MaxInt,Low(Integer)]); //返回: 最大整数是: 2147483647; 最小整数是: -2147483648 { 提示: 格式指令必须以 % 开始, 不区分大小写, %d 代表一个整数; 第二个参数是一个变

2013-01-10 17:56:03 921

原创 Delphi学习笔记六——文件路径相关的字符串操作

uses HTTPApp, Masks;procedure TForm1.Button1Click(Sender: TObject);var ss,s: string;begin //先提取一个文件名的字符串 ss := Application.ExeName; ShowMessage(ss); //C:\Documents and Settings\wy\My Do

2013-01-10 17:54:16 286

原创 Delphi学习笔记五——方法

今天我们来简单介绍一下ObjectPascal的方法。和其他语言一样,ObjectPascal语言的方法是属于一个给定对象的过程和函数。构造器和析构函数也是方法。一、方法的类型方法的类型包括静态(static)、虚拟(virtual)、动态(dynamic)或消息处理(message)。1.1静态方法procedureIAmAStatic;IAmAStatic是一个静态方法

2013-01-10 17:50:49 385

原创 Delphi学习笔记四——语句

今天我们来看一下Delphi的语句。一、常量声明语句和其他语言一样,常量在声明时就被赋值,且在程序执行过程中是不可改变的。常量用“=”表示两边的值是相等的。const Pi = 3.14159; Answer = 342; ProductName = 'Delphi'; 二、赋值语句这个语句最常用,在之前也介绍过。这里就举个例子。

2013-01-10 17:47:24 421

原创 Delphi学习笔记三——运算符

今天我们来看一下Delphi的运算符:一、赋值运算符对于Pascal的新手来说,Delphi的赋值运算符和其它常用编程语言的赋值运算符不大一样,需要用:=来表示。例如:Number := 5; 二、比较运算符对于Object Pascal来说,用=运算符来对两个表达式或两个值进行逻辑比较运算;用三、逻辑表达式Pascal用and和or作为逻辑与和逻辑或的运算符,用not作为逻

2013-01-10 17:42:44 882

原创 Delphi学习笔记二——数据类型

Delphi的数据类型主要有以下这几类:简单数据类型(Simple),字符串数据类型(String),结构数据类型(Struct),指针数据类型(pointer),函数和过程数据类型(procedural),变体数据类型(variant)等。下面我们来一一做一个介绍。一、简单数据类型简单数据类型分为有序数据类型(ordinal)和实数数据类型(real)两种。1.1 有序数

2013-01-10 17:20:58 600

原创 Delphi学习笔记一——Delphi的项目文件简介

我们在用Delphi创建一个项目的时候一般会看到如下图所示的文件包含在项目文件夹中下面我来一一做一下介绍:.res文件——资源文件。{$R *.RES}这个语句是在项目文件中出现的,意思是调用该项目中存在的资源文件。你也可以创建自己的资源文件,调用语句为$R FileName.RES.pas文件——单元文件(这个也是我们用于代码编写的文件).dfm文件——窗体文件

2013-01-10 17:17:56 416

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除