原创 Printer的學習

GetDeviceCaps(Printer.Handle,LOGPIXELSX);獲得水平方向每英寸多少個點GetDeviceCaps(Printer.Handle,LOGPIXELSY) 獲得豎直方向每英寸多少個點 像我的的打印機hp

原创 進程注入方法之 CreateRemoteThread

function TForm1.InjectDll(ThreadId: DWORD; DllFilename: string): Boolean;var  hProcess ,hThread :THandle;  pszLibFileRe

原创 修改已有的應用程序

FindControl 函數可以通過句柄得到TwinControl類FindVclControl函數可以通過絕對座標得到TWinControl類FindVclControl內部還是調用了FindControl 函數, 使用這幾個函數就可以

原创 進程注入方法之 hook

library Project1; { Important note about DLL memory management: ShareMem must be the  first unit in your library's USES

原创 ExtractStrings 使用方法

function ExtractStrings(Separators, WhiteSpace: TSysCharSet; Content: PChar; Strings: TStrings): Integer; 描述ExtractStr

原创 ADO連接池

ADO連接池unit unADOConnectionPool; interfaceuses  Windows,ADODB; const  MAX_CONNECTION_COUNT=5;type   TADOConnectionPool=c

原创 根據計算機名稱獲得ip地址

function LookupName(const Name: string): string; var HostEnt: PHostEnt; begin HostEnt := gethostbyname(PChar(Name)); if

原创 TserverSocket 分析3

2/ stNonBlocking 介紹stNonBlocking之前,要先介紹TserverClientWinSocket TServerClientWinSocket.Create 中   inherited Create(Socket

原创 Delphi下Label中文字體顯示不全問題的解決辦法

有時候把Label的AutoSize屬性設置爲True,當窗體顯示的時候,Label中的內容可能會顯示不完全,只能把AutoSize設置爲False,把Label調整成能顯示出內容的大小。還有一種更簡單的解

原创 CreateRemoteThread 使用

先解釋一下遠程進程,其實就是要植入你的代碼的進程,相對於你的工作進程(如果叫本地進程的話)它就叫遠程進程,可理解爲宿主。首先介紹一下我們的主要工具CreateRemoteThread,這裏先將函數原型簡單介紹以下。CreateRemote

原创 ADO CacheSize的疑問

ADO CacheSize的疑問   在看李維Delphi.5.X.ADO.MTS.COM+高級程序設計篇 第4章中說 在Client-Side Cursor 是,設置CacheSize 是有效果,   實際測試時,我用ado連接一個MS

原创 CM_MOUSEENTER 和 CM_MOUSELEAVE 消息分析

在TControl 類中有自定義的消息    procedure CMMouseEnter(var Message: TMessage); message CM_MOUSEENTER;    procedure CMMouseLeave(

原创 運行期實現控件移動和縮放

unit Unit1; interface uses  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,  Dialogs, StdCtr

原创 TserverSocket 分析1

TserverSocket 分析 Servertype 有兩個值stNonBlocking 和stThreadBlocking 1、  先討論stThreadBlocking 這種類型的server 從字面意思上看有thread,他一定使

原创 TserverSocket 分析2

線程池Threadsize 只有ServerType爲stThreadBlocking纔有效 TServerClientThread.Create 的時候調用ReActivate FServerSocket.AddThread(Self)