随笔分类 - Delphi
摘要:通过TEB结构获取主线程ID,XP系统下测试通过,不同系统的TEB结构可能有所不同。View Code function GetThreadID:DWORD;asm xor esi,esi mov eax,fs:[esi+$18] mov eax,[eax+$24]end;procedure TForm1.Button1Click(Sender: TObject);var thid: DWORD;begin thid := GetThreadID; ShowMessageFmt('%d',[thid]);end;
阅读全文
摘要:默认调用方式Register,传递参数的顺序前三个为al,dl,cl / ax,dx,cx / eax,edx,ecx分别对应一个字节,两个字节,四个字节,当参数3个时,多出的参数入栈,所以第四个参数的地址为[esp+8],第五个参数的地址为[esp+12],[esp+4]至[esp+0]这四个字是函数的返回地址。以上针对类以外的子过程,在类里面定义的过程参数传递有所改变,主要改变为eax保存了类的首地址即:self。代码
阅读全文
摘要:删除Delphi临时文件的Bat,保存成Bat文件,请注意以下代码同时删除了*.dcu文件。代码
阅读全文
摘要:Delphi System Tray Application,版本高于D7时设置Application.ShowMainForm := False;在隐藏的时候,任务栏不显示。代码
阅读全文
摘要:CaptureComponentToBmp代码
阅读全文
摘要:BeginPaint和GetDC的区别代码
阅读全文
摘要:mouse_event代码代码keybd_event代码
阅读全文
摘要:Pure API Window代码A new one代码
阅读全文
摘要:DBGrid Column自动调整宽度,加行号,以及Override DrawColumnCell代码
阅读全文

浙公网安备 33010602011771号