DELPHI ÎļþѹËõ¼ÓÃÜ
1¡¢ ϵͳ¹¦ÄÜ
1£©¡¢Êý¾ÝѹËõ
ʹÓÃDELPHIÌṩµÄÁ½¸öÁ÷ÀࣨTCompressionStreamºÍTDecompressionStream£©À´Íê³ÉÊý¾ÝµÄѹËõºÍ½âѹËõ¡£
2£©¡¢Êý¾Ý¼ÓÃÜѹËõ
ͨ¹ýDelphi±à³ÌÖГÁ÷”µÄÓ¦ÓÃʵÏÖÊý¾Ý¼ÓÃÜ£¬Ö÷Òª²ÉÓÃTstreamµÄÁ½¸öÅÉÉúÀàTfilestream¡¢Tmemorystream À´Íê³ÉµÄ£»ÆäÖÐÊý¾ÝѹËõ²¿·Ö²ÉÓÃ1£©µÄʵÏÖ·½·¨
3£©¡¢Ë«»÷ѹËõÎļþ×Ô¶¯¹ØÁª½âѹ
ͨ¹ý¸ü¸Ä×¢²á±íµÄʵÏÖÀ©Õ¹ÃûÓë³ÌÐòÎļþµÄ¹ØÁª£¬Ö÷Òª²ÉÓÃTregistry£»²¢ÇÒ£¬APIº¯ÊýSHChangeNotifyʵÏÖ×¢²áЧ¹ûµÄÁ¢¼´³ÊÏÖ¡£
4£©¡¢¿ÉÉú³É×Ô½âѹÎļþ
×Ô½âѹµÄÎļþʵÏÖÊý¾ÝѹËõ1£©ÓëÊý¾Ý¼ÓÃÜѹËõ2£©µÄ×Ô¶¯½âѹ£»²¢ÇÒ£¬Í¨¹ý×ÊÔ´ÎļþµÄʹÓÃʵÏÖ¿ÉÖ´ÐеÄ×Ô½âѹÎļþÓëÊý¾ÝÎļþµÄºÏ²¢£¬À´Íê³ÉÊý¾ÝµÄ×Ô½âѹʵÏÖ¡£
2¡¢ ϵͳʵÏÖ
2.1¡¢¹¤×÷ÔÀí
2.2¡¢¹Ø¼ü¼¼ÊõµÄ½²Êö
£¨Ò»£©ZLIB
1£©¡¢»ùÀà TCustomZlibStream£ºÊÇÀàTCompressionStreamºÍTDecompressionStream ÀàµÄ»ùÀ࣬ËüÖ÷ÒªÓÐÒ»¸öÊôÐÔ£º OnProgress£¬ÔÚÀà½øÐÐѹËõ»ò½âѹËõµÄ¹ý³ÌÖлᷢÉúÕâ¸öµÄʼþ ¡£
¸ñʽ£ºProcedure OnProgress (Sender: TObject); dynamic;
2£©¡¢Ñ¹ËõÀàTCompressionStream£º³ýÁ˼̳ÐÁË»ùÀàµÄOnProgress ÊôÐÔÍ⣬ÓÖÔö¼ÓÁËÒ»¸öÊôÐÔ£ºCompressionRate£¬ËüµÄ¶¨ÒåÈçÏ£º
Property CompressionRate: Single read GetCompressionRate;
ͨ¹ýÕâ¸öÊôÐÔ£¬¿ÉÒԵõ½Ñ¹Ëõ±È¡£
ËüµÄ¼¸¸öÖØÒªµÄ·½·¨¶¨ÒåÈçÏ£º
Constructor TCompressionStream.Create (CompressionLevel: TCompressionLevel; Dest: TStream);
ÆäÖУºTcompressionLevel£¨Ñ¹ËõÀàÐÍ£©£¬ËüÓÉÈçϼ¸¸ö¶¨Ò壺
¡¡¡¡¡¡£±£©¡¢ clNone £º²»½øÐÐÊý¾ÝѹËõ£»
¡¡¡¡¡¡£²£©¡¢ clFastest£º½øÐпìËÙѹËõ£¬ÎþÉüѹËõЧÂÊ£»
¡¡¡¡¡¡£³£©¡¢ clDefault£º½øÐÐÕý³£Ñ¹Ëõ£»
¡¡¡¡¡¡£´£©¡¢ clMax£º ½øÐÐ×î´ó»¯Ñ¹Ëõ£¬ÎþÉüËÙ¶È£»
Dest£ºÄ¿µÄÁ÷£¬ÓÃÓÚ´æ·ÅѹËõ¹ýµÄÊý¾Ý¡£
Function TCompressionStream.Write (const Buffer; Count: Longint): Longint;
ÆäÖУºBuffer£ºÐèҪѹËõµÄÊý¾Ý£»
¡¡¡¡¡¡Count: ÐèҪѹËõµÄÊý¾ÝµÄ×Ö½ÚÊý£»
º¯Êý·µ»ØÐ´ÈëÁ÷µÄ×Ö½ÚÊý¡£
×¢Ò⣺ѹËõÀàTCompressionStreamµÄÊý¾ÝÖ»ÄÜÊÇдÈëµÄ£¬Èç¹ûÊÔͼ´ÓÆäÄÚ²¿¶ÁÈ¡Êý¾Ý£¬½«·¢ÉúÒ»¸ö"Error "Òì³£¡£ÐèҪѹËõµÄÊý¾Ýͨ¹ý·½·¨ WriteдÈëÁ÷ÖУ¬ÔÚдÈëµÄ¹ý³ÌÖоͱ»Ñ¹Ëõ£¬²¢±£´æÔÚÓɹ¹Ô캯ÊýÌṩµÄÄÚ´æÁ÷£¨TmemoryStream£©ÖÐ,ͬʱ´¥·¢ OnProcess ʼþ¡£
3£©¡¢ ½âѹËõÀà TDecompressionStream :ºÍѹËõ
Ïà¹ØÎĵµ£º
http://www.delphibbs.com/delphibbs/dispq.asp?lid=2420610
Ŀ¼
===============================================================================
¡Ñ
RTTI ¼ò½é
¡Ñ Àà(class) ºÍ VMT µÄ¹ØÏµ
¡Ñ Àà(class)¡¢ÀàµÄÀà(class of class)¡¢Àà±äÁ¿(class
variable) µÄ¹ØÏµ
¡Ñ TObject.ClassType ºÍ TObject.ClassInf ......
http://www.delphibbs.com/delphibbs/dispq.asp?LID=2421470
±¾ÎÄÊÇ¡¶Delphi µÄRTTI»úÖÆÇ³Ì½¡·µÄÐøÆª£¬ÉÏÆªµØÖ·ÔÚ£º
http://www.delphibbs.com/delphibbs/dispq.asp?lid=2420610
±¾ÎÄÉÏÆª»ù±¾ÉÏÊÇ
RTTI ÈëÃŽéÉÜ£¬ÐøÆª½éÉÜÁËËùÓÐ TypInfo.pas Öеĺ¯Êý£¬¸½¼ÓÁË Classes.pas¡¢Graphics.pas¡¢Controls.pas
ÖÐµÄ ......
Delphi×Ö·û´®¡¢PCharÓë×Ö·ûÊý×éÖ®¼äµÄת»»
ÉèÓÐÒÔÏÂÈý¸ö±äÁ¿£º
var
s:string;
p:pchar;
a:array[1..20] of char;
ÄÇôÈýÕßÖ®¼äµÄת»»ÈçÏ£º
1¡¢×Ö·û´®µ½PChar
p:=PChar(s);
2¡¢PCharµ½×Ö·û´®
s:=p;
3¡¢PCharµ½×Ö·ûÊý×é
StrCopy(@a,p);
4¡¢×Ö·ûÊý×éµ ......
1) DelphiÏòoracleÖд«µÝ²ÎÊý ÈçoracleÖеIJÎÊýÃûΪerpcx
´ð£ºÈç¹ûÏë´Ó±íÀïȡֵµ½oracle£¬Ôòerpcx:=trim(aq1.fieldbyname('erpcx').AsString);
·ñÔòÖ±½ÓÓÿؼþÃû×Ö
Óï¾äΪ
with aperp do
begin
connection:=dm.ADOCerp;
parameters.Clear;&nbs ......