自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

zhaodog的专栏

flex 好玩的东西,现在学习中

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

原创 AtomicBoolean 源码分析

AtomicBoolean 源码分析成员变量value private volatile int value;volatile 修饰,因为value 多线程会改变数值,这里用int 类型1,0表示boolean 的 true 和falseunsafeprivate static final Unsafe unsafe = Unsafe.getUnsafe();使用Unsafe的方...

2019-12-10 23:08:54 127

原创 函数的地址 和 函数大小

procedure p1();beginend; procedure p2();beginend;  取的一个函数的地址  memo1.Lines.Add( Format(%x,[dword(@p1)])) ; 取的一个函数的大小  memo1.Lines.Add( Format(%x,[dword(@p1)])) ;  memo1.

2011-06-30 09:50:00 1045 1

原创 根据计算机名称获得ip地址

<br />function LookupName(const Name: string): string; var HostEnt: PHostEnt; begin HostEnt := gethostbyname(PChar(Name)); if HostEnt <> nil then begin with HostEnt^ do begin Result:=Format('%d.%d.%d.%d', [Ord(h_addr^[0]), Ord(h_addr^[1]),Ord( h_addr^[2]),

2010-12-19 13:01:00 730

原创 Printer的学习

<br />GetDeviceCaps(Printer.Handle,LOGPIXELSX);获得水平方向每英寸多少个点<br />GetDeviceCaps(Printer.Handle,LOGPIXELSY) 获得竖直方向每英寸多少个点<br />像我的的打印机hp <br />GetDeviceCaps(Printer.Handle,LOGPIXELSX);=600<br />GetDeviceCaps(Printer.Handle,LOGPIXELSY);=600<br />A4纸的尺寸是210x2

2010-12-14 17:16:00 814

原创 进程注入方法之 CreateRemoteThread

<br />function TForm1.InjectDll(ThreadId: DWORD; DllFilename: string): Boolean;<br />var<br />  hProcess ,hThread :THandle;<br />  pszLibFileRemote:PChar;<br />  dwMemLen:DWORD;<br />  dwWrited:DWORD;<br />  pfnThreadRtn:Pointer;<br />  dwThreadId:DWORD;<b

2010-12-09 16:58:00 718

原创 进程注入方法之 hook

<br />library Project1;<br />{ Important note about DLL memory management: ShareMem must be the<br />  first unit in your library's USES clause AND your project's (select<br />  Project-View Source) USES clause if your DLL exports any procedures or<br /> 

2010-12-09 16:55:00 741

原创 修改已有的应用程序

<br />FindControl <br />函数可以通过句柄得到TwinControl类<br />FindVclControl<br />函数可以通过绝对坐标得到TWinControl类<br />FindVclControl内部还是调用了FindControl 函数,<br />使用这几个函数就可以修改别人的程序类,哈哈。<br />但是他们有使用的限制<br />1、只能是Delphi或bcb程序<br />2、在同一个进程中,别人的程序,不同进程怎么办呢,当然了进程注入。<br />3、在注入的

2010-12-09 16:52:00 2342

原创 ADO CacheSize的疑问

<br />ADO CacheSize的疑问<br /> <br />在看李维Delphi.5.X.ADO.MTS.COM+高级程序设计篇 第4章中说<br />在Client-Side Cursor 是,设置CacheSize 是有效果,<br /> <br />实际测试时,我用ado连接一个MS-SQL2005 的表,表中有3万多记录<br />在使用Client-Side Cursor  下,cachesize =1 和 CacheSize=1000 打开这个表的时间都是一样的,没有变化<br /> 

2010-12-06 21:41:00 1019

原创 ADO连接池

<br />ADO连接池<br />unit unADOConnectionPool;<br />interface<br />uses<br />  Windows,ADODB;<br />const<br />  MAX_CONNECTION_COUNT=5;<br />type<br />  TADOConnectionPool=class<br />  private<br />//    _CirticalSection:TCriticalSection;<br />    _Connection

2010-10-21 14:27:00 1569

转载 Delphi下Label中文字体显示不全问题的解决办法

有时候把Label的AutoSize属性设置为True,当窗体显示的时候,Label中的内容可能会显示不完全,只能把AutoSize设置为False,把Label调整成能显示出内容的大小。还有一种更简单的解决方法。把Form的Font属性进行如下设置:字体为宋体,字号为小五,字形为常规,字符集为“CHINESE_GB2312”,把Label的ParentFont设置为True即可!

2010-10-18 15:18:00 1138

原创 CM_MOUSEENTER 和 CM_MOUSELEAVE 消息分析

<br />在TControl 类中有自定义的消息<br />    procedure CMMouseEnter(var Message: TMessage); message CM_MOUSEENTER;<br />    procedure CMMouseLeave(var Message: TMessage); message CM_MOUSELEAVE;<br />在我们写控件的时候,可以显示鼠标进入或移除控件的特效<br />但是CM_MOUSEENTER 和CM_MOUSELEAVE消息是什么

2010-10-13 17:16:00 1594

翻译 ExtractStrings 使用方法

<br />function ExtractStrings(Separators, WhiteSpace: TSysCharSet; Content: PChar; <br />Strings: TStrings<br />): Integer;<br />描述<br />ExtractStrings 用空结尾的Content的子字符串填充一个字符串列表<br />Separators 是一个用来截断、分割子字符串的字符集合. 回车、新行、引用字符都是分隔符<br />. Separators 出现引用字符

2010-10-11 09:42:00 2397

转载 CreateRemoteThread 使用

<br />先解释一下远程进程,其实就是要植入你的代码的进程,相对于你的工作进程(如果叫本地进程的话)它就叫远程进程,可理解为宿主。<br /><br />首先介绍一下我们的主要工具CreateRemoteThread,这里先将函数原型简单介绍以下。<br /><br />CreateRemoteThread可将线程创建在远程进程中。<br /><br />函数原型<br />HANDLE CreateRemoteThread(<br />  HANDLE hProcess,                

2010-10-07 12:34:00 959

原创 TserverSocket 分析3

<br />2/ stNonBlocking<br />介绍stNonBlocking之前,要先介绍TserverClientWinSocket<br />TServerClientWinSocket.Create 中<br />  inherited Create(Socket);<br />  if FServerWinSocket.ASyncStyles <> [] then DoSetAsyncStyles;<br /> <br />TserverClientWinSocket 是从TcustomW

2010-09-26 22:18:00 854

原创 TserverSocket 分析2

<br />线程池Threadsize 只有ServerType为stThreadBlocking才有效<br />TServerClientThread.Create 的时候调用ReActivate<br />FServerSocket.AddThread(Self);<br />,在AddThread中<br />    if FActiveThreads.IndexOf(AThread) < 0 then<br />    begin<br />      FActiveThreads.Add(ATh

2010-09-26 22:17:00 562

原创 TserverSocket 分析1

<br />TserverSocket 分析<br />Servertype 有两个值stNonBlocking 和stThreadBlocking<br />1、  先讨论stThreadBlocking<br />这种类型的server 从字面意思上看有thread,他一定使用了线程了<br />在TServerWinSocket.Listen 中<br />  if FConnected and (ServerType = stThreadBlocking) then<br />FServerAcce

2010-09-23 22:49:00 1010

原创 实现窗口透明

<br />procedure TForm1.FormCreate(Sender: TObject);<br />begin<br />TransparentColor:=True;<br />TransparentColorValue:=25;<br />Color:=Form1.TransparentColorValue;<br />BorderStyle:=bsNone;<br />end;

2010-09-14 12:09:00 402

原创 运行期实现控件移动和缩放

<br />unit Unit1;<br />interface<br />uses<br />  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,<br />  Dialogs, StdCtrls, ExtCtrls;<br />const<br />  SETONW_CHANGE=0;<br />  STOS_CHANGE=1;<br />  SWTONE_CHANGE=2;<br />  ETOW_CH

2010-09-13 15:09:00 573

原创 使用7z压缩解压数据

<br />1、下载sevenzip.pas,添加到lib路径<br />2、把7z.dll复制到你工程的目录下<br />3、例子代码<br />procedure Encode_7z( Source:TStream;Dest:TStream );<br />var<br />  Arch: I7zOutArchive;<br />  tmsStream:TMemoryStream;<br />begin<br />  Arch := CreateOutArchive(CLSID_CFormat7z);<

2010-09-10 15:01:00 2073

原创 TIdHTTP 使用 编写秒杀

<br />TIdHTTP 编写秒杀很简单,最主要是分析post的数据,<br />下载httpwatch ,先试着提交一次,通过分析post数据,查找post数据的规律<br /> <br />unit Unit1;<br />interface<br />uses<br />  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,<br />  Dialogs, StdCtrls, IdBaseCompone

2010-08-10 17:59:00 1311 1

翻译 Assigned 函数

<br />Assigned <br />测试空指针或过程变量没有赋值<br />单元<br />System<br />语法<br />function Assigned(const P): Boolean;<br />描述<br />Assigned 用来判断指针或这个过程P是nil。P必须是一个指针或过程变量。 Assigned(P) 相当测试指针变量<br />P<>nil ,或 过程变量@P<>nil。<br />如果P 是nil 返回false ,否则位true<br />注意<br />Ass

2010-08-05 18:07:00 1088

翻译 DivMod 方法

<br />DivMod <br />返回除法后的整数部分,和余数<br />单元<br />Math<br />语法<br />procedure DivMod(Dividend: Integer; Divisor: Word; var Result, Remainder: Word);<br />描述<br />调用DivMod ,生成一个16位的除法<br />Dividend 是被除数<br />Divisor 是除数<br />Result 是整数返回值<br />Remainder 是余数返回值

2010-08-05 14:45:00 2196

翻译 Frac函数

<br />Frac<br />返回实数的小数部分<br />单元<br />System<br />语法<br />function Frac(X: Extended): Extended;<br />描述<br />在delphi中,Frac函数返回参数X的小数部分<br />X是一个实数表达式。返回值是X的小数部分;也就是说Frac(X) = X - Int(X).<br />例子<br />var<br /> R: Real;<br />begin<br />  R := Frac(123.456)

2010-08-05 14:32:00 28509

转载 Delphi中的线程类

<br />Delphi中的线程类 <br /> <br />转贴于 华夏黑客同盟 http://www.77169.org<br /><br />Delphi中有一个线程类TThread是用来实现多线程编程的,这个绝大多数Delphi书藉都有说到,但基本上都是对<br /><br />TThread类的几个成员作一简单介绍,再说明一下Execute的实现和Synchronize的用法就完了。然而这并不是多线程编<br />程的全部,我写此文的目的在于对此作一个补充。<br /><br />线程本质上是进程

2010-07-23 13:56:00 462

原创 flex actionscript 和 javascript 通讯(3) 整合例子

前面说了单独的调用,现在补上一个整合的例子flex 中                                 import mx.controls.Alert;            private function init():void{                ExternalInterface.addCallback("actionScriptSay", actionScr

2007-06-15 13:47:00 1465

原创 flex 文件上传

flex  的文件上传也可以通过 FileReference来实现要比文件上传麻烦一些。例子如下:                                private var file:FileReference=new FileReference();            private function onClick():void{                    file

2007-06-15 10:19:00 1138

原创 flex 的多国语言化

在工程的目录下建立locale目录,再在local建立个个国家的目录,如ch-GB,en_US,ja_JP,在这些目录下放入一个文件,名字是strings.properties,内容格式key=value 举例如下:aaa = dbbb = cccc = bddd = a注意值 如果是汉字请用/u+unicode编码表示,举例 :下一个 用/u4e0b/u4e00/u4e2a表示。使用方式   

2007-06-14 13:58:00 1505

原创 flex 下载文件

flex中下载文件下载文件是很简单的,使用这个FileReference类即可,3行代码即可,在实验中发现没有反应,在反复测试中终于找到了原因。在flex中下载文件是异步的,你要把FileReference类的生存周期设的更长一下才可以。下面把代码贴出来http://www.adobe.com/2006/mxml" layout="absolute" backgroundColor

2007-06-12 08:49:00 14480 7

原创 flex 屏蔽鼠标右键

屏蔽FLEX右键菜单以及实现自定义的FLEX右键功能 完全屏蔽FLEX右键菜单比当初想象的要难一些,因为大多数FLEX文档中仅仅介绍了如何隐藏一部分FLEX右键菜单,例如: var contextMenu : ContextMenu = new ContextMenu(); contextMenu.hideBuiltInItems(); // 隐藏一些内建的鼠标右键菜单项 但是这个功能

2007-06-12 08:18:00 3894 4

转载 IIS配置支持Amfphp的Web应用

我们仅以Windows XP、IIS 5.1和Amfphp 1.9 beta 2为例讲述。一、安装PHP1. 下载到http://www.php.net/下载PHP 5.2.1 zip package,将其解压缩到硬盘。2.  添加.php映射打开Internet 信息服务>默认网站>属性>主路径>配置>添加,在弹出的对话框中设定可执行文件php5isapi.dll的位置,设定

2007-06-08 13:39:00 1442

原创 flex 和webService 通讯

在flex中和webservice是很简单,使用Webservice类就好了。先说一下他的使用呀   web=new WebService();//这是一个webservice的地址;    web.wsdl = "http://www.webservicex.net/globalweather.asmx?wsdl";      web.loadWSDL();这样就已经连接上了

2007-06-08 11:11:00 6198 2

原创 flex actionscript 和 javascript 通讯(2) javascript调用 actionscript的函数

上次说完actionsript调用javascript的函数,这次来说一下javascript调用actionsript的函数。这个功能要使用ExternalInterface.addCallback( functionName:String, closure:Function):void  函数functionName 是要注册的函数名字,也就是javascript可以使用的函数名字,

2007-06-07 16:14:00 1903

原创 flex actionscript 和 javascript 通讯(1) actionscript 调用javascript的函数

actionscript 想和javascript 通讯,要使用 ExternalInterface 类ExternalInterface.call(functionName:String, ... arguments):*  用来调用 javascript中的函数functionName 是javascript中的函数名字argumnets 如果那个函数是带参数的,输入函数的参数

2007-06-05 15:04:00 2725

原创 flex 播放mp3

研究类flex 中的声音类,做了个播放mp3的工具呵呵,现在把源码贴出来。 http://www.adobe.com/2006/mxml" layout="absolute" initialize="OnClick()">      import flash.media.*;   import mx.events.SliderEvent ;   private var _type:int=2;

2007-06-04 10:22:00 4061 2

原创 flex Container添加child

学习flex 有一周了,说一下心得吧想panel这些控件都是 Container这些类继承下来,想加入一个child的话要调用addChild函数,参数是DisplayObject类型,但是如果是如果真是DisplayOject类型的话,有运行错误,主要原因是Container已经override这个函数了,在里面判断这个类必须实现了IUIComponent接口,也就是说你添加的类必须是U

2007-06-04 10:16:00 1756

空空如也

空空如也

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

TA关注的人

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