- 博客(344)
- 资源 (30)
- 收藏
- 关注

转载 建立线程监视
var Form1: TForm1; Hprocess: THandle;implementation{$R *.dfm}function MyThread(P: Pointer): DWORD; stdcall;begin if WaitForSingl
2011-02-10 15:22:00
821
原创 有线网卡走私网,无线走公网
Local Geteway:192.168.10.254Wifi Geteway:192.168.13.254route delete 0.0.0.0 mask 0.0.0.0 192.168.10.254route add 192.168.0.0 mask 255.255.0.0 192.168.10.254
2019-11-26 22:56:08
382
原创 修复快捷图标丢失
@echo offsetlocal EnableDelayedExpansioncolor 2fecho.echo ------------------------------------------------------echo * 正在尝试修复系统,请稍候..... * set DT=%USERPROFILE%\Des...
2019-03-22 01:03:36
354
转载 S5700交换机如何配置链路聚合
配置手工负载分担模式链路聚合示例组网需求如图1所示,SwitchA和SwitchB通过以太链路分别都连接VLAN10和VLAN20的网络,且SwitchA和SwitchB之间有较大的数据流量。用户希望SwitchA和SwitchB之间能够提供较大的链路带宽来使相同VLAN间互相通信。同时用户也希望能够提供一定的冗余度,保证数据传输和链路的可靠性。图1 配置手工负载分担模式链路聚合组网图 配置思路采...
2018-02-15 16:30:41
35100
10
转载 GetDiskInfo
{$APPTYPE CONSOLE}uses SysUtils, ActiveX, ComObj, Variants;function ListDrives : string;var FSWbemLocator : OLEVariant; objWMIService : OLEVariant; colDiskDrives : OLEVariant;
2015-04-28 21:46:26
1324
转载 Free
1、在方法中创建,在方法的收尾时.Free。2、在单元中创建,在单元的释放时.Free。二、Delphi有优化代码的功能,一般情况下,即使你不写Free。在程序结束时,它会释放的。三、写Free是程序员的一个良好的习惯。如果你的程序不是正常退出,就会造成内存被占用。四、对象的创建,如果寄宿在Form(父控件)上,Form释放时,它同时被释放,特别是无寄宿关系(父控件)的,一定要在不
2015-04-09 01:00:03
773
原创 Dellphi随记
全局变量是有范围的:1、工程范围内,应定义一个单元,专门存放变量;所有的单元uses该单元;2、单元内全局变量,放在单元的 private中声明的变量,只能在本单元内使用;3、方法内的全局变量,在方法的Begin之前声明,它只能在本方法内使用,本单元调用其它方法时,它对于其它方法,就是全局变量。
2014-11-19 01:05:20
1263
转载 REGEXPR正则表达式
其实这个Pascal单元我在几个论坛上面都推荐过,也是我唯一会用的DELPHI下面的正则表达式实现。正则表达式是个极其繁琐和强大的东西,小生才疏学浅,也不准备写正则表达式的教程,借着对这个单元的介绍,会有一些浅显且有用的例子。首先介绍的是这个单元的主角:TRegExpr类,这个类包括很多成员,这里仅简单的介绍一下一般匹配的过程。下面是一段在文本中提取邮件地址的代码:
2014-06-07 00:59:56
1922
转载 Delhpi TQuery应用
9.1 有效地使用查询 要有效地使用查询,必须熟悉标准的SQL语言以及所使用的服务器对SQL-92的限制和扩展,同时还要熟悉BDE。9.1.1 查询桌面数据库 作为一个桌面开发者,应对表格、记录和字段的概念有所了解,又能熟练地使用TTable构件访问数据集中的每一条记录和每一个字段。还可以使用TTable的范围和过滤功能在数据集中选择一部分记录,前者用于选择一块连续的记录,这些
2014-06-06 14:16:40
875
转载 通过指针对只读属性写操作一例
type TObj = class private FNumber: Integer; public property Number: Integer read FNumber;//只读属性,不可写 end; procedure TForm1.FormCreate(Sender: TObject);var O: TObj;begin O := TOb
2014-02-18 15:24:12
1230
转载 提升进程权限为DEBUG权限
procedure SetPrivilege;var OldTokenPrivileges, TokenPrivileges: TTokenPrivileges; ReturnLength: dword; hToken: THandle; Luid: int64;begin OpenProcessToken(GetCurrentProcess, TOKEN_ADJ
2014-01-05 22:59:35
1433
转载 Delphi制作DLL
Delphi制作DLL一 Dll的制作一般步骤二 参数传递三 DLL的初始化和退出清理[如果需要初始化和退出清理]四 全局变量的使用五 调用静态载入六 调用动态载入七 在DLL建立一个Tform八 在DLL中建立一个TMDIChildform九 示例:十 Delphi制作的Dll与其他语言的混合编程中常遇问题:十一 相关资料一 D
2013-12-19 18:42:25
2990
转载 Delphi之钩子函数
目前对钩子的理解: 譬如我们用鼠标在某个窗口上双击了一次, 或者给某个窗口输入了一个字母 A;首先发现这些事件的不是窗口, 而是系统! 然后系统告诉窗口: 喂! 你让人点了, 并且是连续点了两鼠标, 你准备怎么办?或者是系统告诉窗口: 喂! 有人向你家里扔砖头了, 不信你看看, 那块砖头是 A. 这时窗口的对有些事件会忽略、对有些事件会做出反应:譬如, 可
2013-12-19 14:50:32
6803
原创 动态数组指针应用
Type TMyArr = array of array of array of Integer; Pint = ^TMyArr;var PArr: Pint; i, j, k, ic, jc, kc: Integer;begin ic := 2; jc := 3; kc := 4; New(PArr); SetLength(PArr^, ic, jc, k
2013-12-06 20:01:16
1020
原创 传入动态数组
TMyRec = record sName: string[15]; Sex: integer; end; pMyRec = ^TMyRec; arr1 = array of pMyRec;var a1: arr1;procedure TForm1.Button1Click(Sender: TObject);var i: integer;begin
2013-12-05 19:03:36
929
原创 数组类型指针
{使用一个元素的数组指针} PMyRec = ^TMyRec; TMyRec = record F1: Char; F2: Word; end;procedure TForm1.Button1Click(Sender: TObject);type PArr = ^TArr; TArr = array [0 .. 0] of TMyRec;var bu
2013-12-05 18:17:58
909
原创 数组指针参数
Const arr1: array [0 .. 1, 0 .. 1] of string = (('A0B0', 'A1B0'), ('A0B1', 'A1B1')); arr2: array [0 .. 2, 0 .. 1] of string = (('X0Y0', 'X1Y0'), ('X2Y0', 'X0Y1'), ('A0', 'B0'));type TC
2013-12-05 02:07:38
841
转载 RmbChangdx
function RmbChangdx(mmje: Double): String;const s1: String = '零壹贰叁肆伍陆柒捌玖'; s2: String = '分角元拾佰仟万拾佰仟亿拾佰仟万';var s, dx: String; i, Len: Integer;function StrTran(const s, s1, s2: String): St
2013-12-05 00:39:38
795
原创 Tlist_Demo
type TSmt = record SName: string[16]; Feeder: Integer; Dushu: Real; end; Psmt = ^TSmt;var List: TList;procedure TForm2.Button1Click(Sender: TObject);var buf: Psmt; i: I
2013-12-04 23:19:24
790
转载 Delphi 快捷键
分类快捷键解释备注组件设计类Escape选择当前组件容器 Shift + Click选择多个组件;选择窗体 Tab选择下一个组件 Shift + Tab选择上一个组件 方向键选择此方向的下一个组件
2013-12-02 21:07:04
826
转载 Unicode 字符
unit unUnicodeMain;interfaceuses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, ExtCtrls, ImgList, Grids;type TForm1 = class(TForm) Strin
2013-11-30 21:27:26
906
原创 分离包含空格字符串[xe & D7]
xevar s: string; sList: TStringList;begin s := 'aaa,bbb,cc c,dd dd,eee'; sList := TStringList.Create; sList.StrictDelimiter := True; //Delph7无此属性 sList.Delimiter := ','; sList.Delimi
2013-11-20 01:03:38
1554
原创 泛型1例
Tm = record h, w: Integer; end;uses Generics.Collections;var m1, m2: TList; mr: Tm; i: Integer;begin m1 := TList.Create; for i := 1 to 5 do begin mr.h := i; mr.w := i;
2013-11-19 00:06:59
870
转载 OS CodePage_ID
[code=delphi]函数:GetOEMCP:Cardinal;返回值OEM的code-page的ID。返回值代码037 IBM EBCDIC - U.S./Canada 437 OEM - United States 500 IBM EBCDIC - International 708 Arabic - ASMO 708 709 Arabic - ASMO 449+, BC
2013-11-10 15:13:16
1237
转载 OS LanguageID
LANGID GetSystemDefaultLangID(void);LANGID GetUserDefaultLangID(void);他们的返回值是语言的ID:0x0000 Language Neutral 0x007f The language for the invariant locale (LOCALE_INVARIANT). See MAKELCID. 0x0400 P
2013-11-10 15:05:10
1704
原创 匿名方法[2]
Tfun = REFERENCE to function(c, y: integer): integer;function Ta(x, y: integer; Tb: Tfun): integer;begin result := Tb(x, y);end;procedure TForm1.Button1Click(Sender: TObject);var f: Tfun;b
2013-11-09 14:30:01
661
原创 匿名方法[1]
Tfun = REFERENCE to function(c, y: integer): integer;function Ta(x, y: integer; Tb: Tfun): integer;begin result := Tb(x, y);end;procedure TForm1.Button1Click(Sender: TObject);begin ShowMess
2013-11-09 13:51:48
587
转载 中文标点的Unicode编码
0b7·18300d7×2152014—82122018‘82162019’8217201c“8220201d”82212026…82303001、122893002。
2013-11-08 01:24:20
1959
转载 什么时候使用接口什么时候使用抽象类[转载]
什么时候使用接口什么时候使用抽象在一个面向对象的系统中,系统的各种功能是由许许多多的不同对象协作完成的。在这种情况下,各个对象内部是如何实现自己的对系统设计人员来讲就不那么重要了;而各个对象之间的协作关系则成为系统设计的关键。小到不同类之间的通信,大到各模块之间的交互,在系统设计之初都是要着重考虑的,这也是系统设计的主要工作内容。面向接口编程我想就是指按照这种思想来编程吧!实际上,
2013-11-07 01:14:13
1418
原创 多级接口实现方法
{多级接口实现方法 } {DateTime:2013.11.7} iFace = interface ['{68252415-0850-4B0D-89B5-C7F41C1E13F1}'] function getFuc: string; procedure Msg; end; iBace = interface ['{607028C1-69BD-
2013-11-07 01:02:58
789
原创 运算函数
InterLockedDecrement();InterlockedIncrement();InterlockedExchange();
2013-11-05 22:45:37
590
原创 类事件栗子
TonMsg = procedure(s: string) of object; Tman = class private fAge: integer; fonMsg: TonMsg; procedure setFage(iAge: integer); published property onMsg: TonMsg read fonMsg write
2013-10-30 21:02:56
579
原创 类事件
TcusCls = class private FonEvent: TNotifyEvent; published property onMsg: TNotifyEvent read FonEvent write FonEvent; public procedure Cusevent(Sender: TObject); end;procedure T
2013-10-30 13:55:08
803
转载 类引用类型
类引用类型声明 以上讲到的类类型,一般不能直接对类类型操作,而只能对类的实例即对象操作。只有类方法以及类的构造和析构可以直接作用于类本身。那么类引用类型是一种什么样的数据类型呢?类引用类型实际上就是指向某种类类型的指针,用这个指针可以引用任何同类型的类。 类引用类型的声明语法如下: Type TClassRef=Class of Tobject; 上例中,声明了
2013-10-29 23:56:45
1126
转载 隐藏任务栏程序图标一例
procedure TMainForm.FormShow(Sender: TObject); var hwndOwner: HWnd; begin hwndOwner := GetWindow(Handle, GW_OWNER); ShowWindow(hwndOwner, SW_HIDE); // For Windows 2000, additionally call
2013-10-28 20:48:02
716
原创 创建文件2
var Buf: TStringList; i: Integer; S, s1, sName, sExt: AnsiString;begin sExt := '.txt'; sName := 'NewFile'; s := sName + sExt; i := 0; try Buf := TStringList.Create; if FileExi
2013-10-24 21:48:34
554
原创 创建文件1
var Buf: TStringList; i: Integer; S, s1, sName, sExt: AnsiString;begin sExt := '.txt'; sName := '新建文本文件'; s := sName + sExt; i := 1; try Buf := TStringList.Create; if FileExis
2013-10-23 23:56:22
646
原创 多线程临界区Demo
var iCount: integer = 0; iThread: integer = 0; //线程计数 THreadID: Cardinal; CS: TRTLCriticalSection; //线程临界区function myThreaFunc(p: Pointer): DWORD; stdcall;var i: Integer;begin inc(i
2013-10-21 23:41:43
840
转载 使用override需要注意的地方
使用override需要注意的地方 在override时,如果override的是procedure,则加上关键字inherited; 就会执行父类同名procedure的所有过程,然后再执行子类中特有的过程。如果override的是function则不会执行父类中同名function的内容
2013-10-16 01:26:29
983
原创 Class Demo [输出文字到桌面]
type TcustCls = class private Fx, Fy: Integer; Fs: string; public procedure outPut(x, y: Cardinal; s: string); end;procedure Tcustcls.outPut(x, y: Cardinal; s: string);var cvs
2013-10-13 13:37:40
832
TMS Component Pack 5.7.1.0 Full Source 安装版
2010-10-02
DELPHI全掌握(万一先生的博客)
2009-07-05
PASCAL精要(编程技巧)
2009-07-05
API函数的中文帮助文件
2009-07-05
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人