===================================Delphi:===================================================当前版本(2007)中的默认状态下, String 就是 AnsiString在 Delphi 2009 中:string = UnicodeString; (同样: PString = PUnicodeString;)Char = WideChar; (同样: PChar = PWideChar;)procedurevar List: TStrings;begin List := TStringList.Cr Read More
posted @ 2011-11-05 14:17 findumars Views(19168) Comments(3) Diggs(0) Edit
初学 Delphi 嵌入汇编[30] - 寄存器表类型名称二进制码寄存器说明多功能寄存器AL0累加寄存器低八位AH100累加寄存器低八位AX016 位累加寄存器EAX032 位累加寄存器BL11基址寄存器低八位BH111基址寄存器低八位BX1116 位基址寄存器EBX1132 位基址寄存器CL1计数寄存器低八位CH101计数寄存器低八位CX116 位计数寄存器ECX132 位计数寄存器DL10数据寄存器低八位DH110数据寄存器低八位DX1016 位数据寄存器EDX1032 位数据寄存器指针寄存器SP10016 位堆栈指针寄存器ESP10032 位堆栈指针寄存器BP10116位基址指针寄存器E Read More
posted @ 2011-11-05 13:50 findumars Views(787) Comments(0) Diggs(0) Edit
全局变量 HInstance 到底是在什么时候赋值的?在学习资源文件和钩子函数时, 经常用到当前模块句柄(HInstance)这个全局变量. 今天特别想知道, 它到底是在什么时候给赋值的.输入 HInstance; "Ctrl+鼠标" 找到它的声明之处: SysInit 单元的第 29 行(Delphi 2007) - HInstance: LongWord;看来 Delphi 的隐含单元不只是 System.pas, 还有 SysInit.pas.在 SysInit 单元的 658 行找到了它的赋值语句: HInstance :=GetModuleHandle(nil); Read More
posted @ 2011-11-05 13:44 findumars Views(236) Comments(0) Diggs(0) Edit
Delphi 关键字详解absolute//它使得你能够创建一个新变量, 并且该变量的起始地址与另一个变量相同.var Str: string[32]; StrLen: Byte absolute Str;//这个声明指定了变量StrLen起始地址与Str相同.//由于字符串的第0个位置保存了字符串的长度, 所以StrLen的值即字符串长度.begin Str := 'abc'; Edit1.Text := IntToStr(StrLen);end;abstract//它允许你创建抽象的方法, 包括有抽象方法的类称为抽象类.//Abstract关键字必须与Virtual或Dyn Read More
posted @ 2011-11-05 13:44 findumars Views(103) Comments(0) Diggs(0) Edit
Components 与 Controlsprocedure TForm1.Button1Click(Sender: TObject);var i: Integer;begin Memo1.Clear; Memo1.Lines.Add('窗体所属的 Components:'); for i := 0 to Self.ComponentCount - 1 do Memo1.Lines.Add(Components[i].Name); Memo1.Lines.Add(''); Memo1.Lines.Add('窗体所属的 Controls:'); f Read More
posted @ 2011-11-05 13:28 findumars Views(131) Comments(0) Diggs(0) Edit
窗体相关操作//包含控件数:var num: Integer;begin num := Self.ControlCount; ShowMessage('窗体上共有控件: ' + IntToStr(num)); //没有包括不可视控件和panl内的控件 //ShowMessage('Panel1上共有控件: ' + IntToStr(Panel1.ControlCount));end;//遍历窗体上的控件:var i: Integer;begin for i := 0 to Self.ControlCount - 1 do begin ShowMessage(Se Read More
posted @ 2011-11-05 13:09 findumars Views(297) Comments(0) Diggs(0) Edit
Delphi判断操作系统版本(包括vista等)Windows操作系统大全。包括最新的Longhorn,Vistatype POSVersionInfoEx = ^TOSVersionInfoEx; OSVERSIONINFOEXA = record dwOSVersionInfoSize: DWORD; dwMajorVersion: DWORD; dwMinorVersion: DWORD; dwBuildNumber: DWORD; dwPlatformId: DWORD; szCSDVersion: Array[0..127] of AnsiChar; wServicePackMajo Read More
posted @ 2011-11-05 12:52 findumars Views(1428) Comments(0) Diggs(0) Edit
来自:http://www.cnblogs.com/del/archive/2008/11/19/1336444.html区位码:在 GB2312 时提出的, GB2312 是一个 94*94 的二维表, 行就是 "区"、列就是 "位", 譬如 "万" 字在 45 区 82 位, 所以 "万" 字的区位码是: 45 82.00-09 区(682个): 是符号、数字、英文字符...制表符等;10-15 区: 空白, 留待扩展;16-55 区(3755个): 常用汉字(也有叫一级汉字), 按拼音排序;56-87 区(3 Read More
posted @ 2011-11-05 12:29 findumars Views(21880) Comments(0) Diggs(2) Edit
Delphi 为我们提供了三个方便的函数:GlobalAllocPtr {简化自 API 的 GlobalAlloc}GlobalReAllocPtr {简化自 API 的 GlobalReAlloc}GlobalFreePtr {简化自 API 的 GlobalFree}读写本程序以外的数据时可以使用它们, 很方便, 譬如:p := GlobalAllocPtr(0, Len); {分配}p := GlobalReAllocPtr(p, Len, 0); {重分配}GlobalFreePtr(p); {释放}注意 GlobalAllocPtr 的第一个参数和 Glob... Read More
posted @ 2011-11-05 11:56 findumars Views(1530) Comments(0) Diggs(0) Edit
不好意思,这张表拷贝自万一兄的帖子:http://www.cnblogs.com/del/archive/2008/02/25/1079970.html但是我希望自己能把这些消息的注释都写上。特别简单的消息就不写了(否则反而无法一目了然),只写对我自己觉得值得注意的消息。我也没有整块的时间,有时间就... Read More
posted @ 2011-11-05 10:49 findumars Views(695) Comments(0) Diggs(0) Edit