06 2011 档案

Passcal 动态链接库
摘要:/Files/jxgxy/009.pdf 阅读全文

posted @ 2011-06-29 14:21 jxgxy 阅读(244) 评论(0) 推荐(0)

xp 盗版变正版 vbs
摘要:ONERRORRESUMENEXTDimVOL_PROD_KEYifWscript.arguments.count<1thenVOL_PROD_KEY=InputBox("辰日东起http://blog.sina.com.cn/livxv"&vbCr&vbCr&"本程序将自动替换你当前Windows的序列号,通过微软验证完全正版。"&vbCr&vbCr&"序列号(OEM版无效,默认版本为XPVLK):","WindowsXP序列号自动更换器","MRX 阅读全文

posted @ 2011-06-28 18:40 jxgxy 阅读(237) 评论(0) 推荐(0)

如何使用系统级热键捕捉当前窗口保存为 png 图片
摘要:unitUnit1;interfaceusesWindows,Messages,SysUtils,Variants,Classes,Graphics,Controls,Forms,Dialogs,StdCtrls;typeTForm1=class(TForm)procedureFormCreate(Sender:TObject);procedureFormDestroy(Sender:TObject);privateprocedureWMHotKey(varMsg:TWMHotKey);messageWM_HOTKEY;publicend;varForm1:TForm1;implementat 阅读全文

posted @ 2011-06-24 15:23 jxgxy 阅读(293) 评论(0) 推荐(0)

什么是Thread Safe线程安全
摘要:Thread-safety(线程安全)是指代码被多个线程同时执行的时候仍然正常工作。尤其是要满足当多个线程都需要访问同一共享数据空间的时候,只有一个线程能被满足。多线程执行的时候是处在一个共享地址空间,每个线程都可以访问其他线程的内存空间。为了使程序符合预定的执行的逻辑顺序,提出了线程安全的概念,符合线程安全标准的代码可以更好地得到控制、预测,不至于陷入后期Bug调试而无从下手的尴尬境地。在实际中要判定一段代码是线程安全的会比较困难,而往往采用相反的策略:如何会导致线程不安全?下面列出了常见的一部分。访问了全局变量或使用了堆(尤其没有自动回收的时候)。分配/释放全局限制的资源,比如文件,子进程 阅读全文

posted @ 2011-06-23 16:23 jxgxy 阅读(633) 评论(0) 推荐(0)

passcal 编写多线程程序
摘要:/Files/jxgxy/011.pdf 阅读全文

posted @ 2011-06-22 17:40 jxgxy 阅读(207) 评论(0) 推荐(0)

Passcal 代码标准文档
摘要:/Files/jxgxy/006.pdf 阅读全文

posted @ 2011-06-22 17:26 jxgxy 阅读(196) 评论(0) 推荐(0)

用一个 Byte 数表示 8 个复选框的选择状态
摘要:unitUnit1;interfaceusesWindows,Messages,SysUtils,Variants,Classes,Graphics,Controls,Forms,Dialogs,StdCtrls,CheckLst;typeTForm1=class(TForm)CheckListBox1:TCheckListBox;Button1:TButton;Edit1:TEdit;procedureFormCreate(Sender:TObject);procedureButton1Click(Sender:TObject);procedureCheckListBox1Click(Sen 阅读全文

posted @ 2011-06-22 14:51 jxgxy 阅读(369) 评论(0) 推荐(0)

Memo 中 使用 FindDialog
摘要:procedureTForm1.Button1Click(Sender:TObject);beginfinddialog1.Execute;end;procedureTForm1.FindDialog1Find(Sender:TObject);varI,J,PosReturn,SkipChars:Integer;beginforI:=0toMemo1.Lines.CountdobeginPosReturn:=Pos(FindDialog1.FindText,Memo1.Lines[I]);ifPosReturn<>0then{found!}beginSkipChars:=0;for 阅读全文

posted @ 2011-06-21 16:18 jxgxy 阅读(282) 评论(0) 推荐(0)

Delphi的TRegistry注册表类方法详解
摘要:Delphi的TRegistry注册表类方法详解 收藏●GetDataInfo方法Function GetDataInfo(const ValueName:String;Var Value:TRegDataInfo):Boolean;TregDataType=(rdunknown,rdstring,rdexpandstring,rdexpandstring,rdinterger,rdbinary);TregDataInfo=record Regdata:TRegDataType;数据类型 dataSize:integer;数据大小endvaluename:和当前键关联的数据值名称value:. 阅读全文

posted @ 2011-06-21 11:52 jxgxy 阅读(500) 评论(0) 推荐(0)

synchronize
摘要:1。synchronize方法的产生与vcl的局限性有关,因为vcl控件在同一时刻只能被单线程访问,如果多个线程同时访问vcl,vcl会出现问题。所以问了安全地访问vcl,Tthread类提供了一个方法叫synchronize,他可以让线程中的方法在主线程中执行,所以我们可以把访问vcl的代码都放在这个方法中,然后由主线程执行,从而确保vcl能被安全地访问调用.它的类型是TThreadMethod=procedure of object;procedure 参数:Sychronize(Method:TThreadMethod); 2。当创建一个线程时,vcl会在主线程中创建一个隐含的线程窗口, 阅读全文

posted @ 2011-06-21 11:48 jxgxy 阅读(409) 评论(0) 推荐(0)

临界区对象TCriticalSection(Delphi) 与 TRtlCriticalSection 的区别
摘要:TRtlCriticalSection 是一个结构体,在windows单元中定义;是InitializeCriticalSection,EnterCriticalSection,LeaveCriticalSection等这几个kernel32.dll中的临界区操作API的参数;TCriticalSection是在SyncObjs单元中实现的类,它对上面的那些临界区操作API函数进行了了封装,简化并方便了在Delphi的使用;如TCriticalSection.Enter;就是调用了EnterCriticalSection这个API函数。多线程程序中,如果各个线程要访问同一个资源,如同一个变量这 阅读全文

posted @ 2011-06-21 10:41 jxgxy 阅读(413) 评论(0) 推荐(0)

线程安全队列 采用双list实现
摘要:unit uQueueEx;interface uses windows,SysUtils,Classes, uCriticalSection;type{线程安全队列} TQueueEx = class private m_bEventNotify:boolean; m_nExchangeCount:longint; m_nNextGetPoint:Longint; m_nNextGetCount:Longint; m_nNextPutPoint:Longint; m_csGet: TCriticalSection; m_csPut: TCriticalSection; m_lstGet:TL 阅读全文

posted @ 2011-06-20 13:09 jxgxy 阅读(594) 评论(0) 推荐(0)

Delphi 线程安全单例
摘要:在C++中写了一个多线程环境下写日志的插件,考虑到以前写Delphi代码时对文件的操作类封装时老是欠缺线程安全方面的考虑,所以总结了一下,写了一个线程安全的单例。可能有欠缺之处请各位朋友多多指教。首先自己封了一个多线程的临界操作类,用来管理多线程的临界区,方法很简单只是单独对WINDOWS API的封装,实现单元如下:(********************************************************************@file: CriticalSectionU.pas*@desc: 多线程操作时,对临界区的封装*@author: daihw*@date: 阅读全文

posted @ 2011-06-20 12:49 jxgxy 阅读(544) 评论(0) 推荐(0)

把字节数显示成kb或gb的函数
摘要:functionFormatByteSize(constbytes:Longint):string;constB=1;//byteKB=1024*B;//kilobyteMB=1024*KB;//megabyteGB=1024*MB;//gigabytebeginifbytes>GBthenresult:=FormatFloat('#.##GB',bytes/GB)elseifbytes>MBthenresult:=FormatFloat('#.##MB',bytes/MB)elseifbytes>KBthenresult:=FormatFlo 阅读全文

posted @ 2011-06-17 22:38 jxgxy 阅读(340) 评论(0) 推荐(0)

命令tree的简单妙用.
摘要:昨天在ourdev上下了个软件工程代码,里面有个工程文件的结构图,类似下图:E:\debug>tree /f卷 WORK 的文件夹 PATH 列表卷序列号码为 000007BC E4BD:002BE:.│ 效果_1.png│ 效果_2.png│ 效果_1.jpg│ 效果_2.jpg│ 使用手册V1_0.pdf│├─source│ Main.h│ Display.c│ DotLib.c│ SPI.h│ SPI.c│ Display.h│ Dotlib.h│ TWI.h│ PCF8563.c│ PCF8563.h│ TWI.c│ Includes.h│ Main.c│└─protues LC 阅读全文

posted @ 2011-06-17 14:14 jxgxy 阅读(298) 评论(0) 推荐(0)

Delphi指针大全
摘要:Delphi 指针大全目 录1 DELPHI 的指针-引用................................................................................. - 1 -2 delphi 的“引用/值”模型 .............................................................................. - 5 -3 谈谈 Delphi 的类型与指针 .............................................................. 阅读全文

posted @ 2011-06-17 11:37 jxgxy 阅读(553) 评论(0) 推荐(0)

内存映射文件
摘要:内存映射文件内存映射文件的概念:内存映射文件提供了一组独立的函数,使应用程序能够通过内存指针像访问内存一样访问磁盘上的文件。通过内存映射文件函数可以将磁盘上的文件全部或者部分映射到进程的虚拟地址空间的某个位置。一旦完成映射,对磁盘文件的访问就可以像访问内存文件一样便捷。使用内存映射文件的好处:a系统使用内存映射文件,以便加载和执行.exe和DLL文件。这可以大大节省页文件空间和应用程序启动运行所需的时间。b可以使用内存映射文件来访问磁盘上的数据文件。这使你可以不必对文件执行I/O操作,并且可以不必对文件内容进行缓存。c可以使用内存映射文件,使同一台计算机上运行的多个进程能够相互之间共享数据。注 阅读全文

posted @ 2011-06-15 11:27 jxgxy 阅读(542) 评论(0) 推荐(0)

Delphi 2007 一段代码手工折叠
摘要:{$REGION 'Designer Managed Code'}............{$ENDREGION} 阅读全文

posted @ 2011-06-08 11:03 jxgxy 阅读(1446) 评论(0) 推荐(0)

导航