DelphiÈý²ã ѹËõÊý¾Ý´«Êä
Client:TSocketConnection ºÍServer: Scktsrvr¹ØÏµ----ѹËõÊý¾Ý´«Êä
Ò»Ö±ÓÃSocketConnectionºÍ·þÎñ¶ËµÄ´«ÊäÊý¾ÝÔÚÈý²ãÊý¾Ý¿âÖУ¬´ÓÀ´Ã»ÓÐ×¢Òâµ½ËüÃÇÖ®¼äµÄÊý¾Ý´«Ê䣬ֻÊÇÏë×Å£¬¹ÜËüÁË£¬ÍøÂçµÄÊ£¬Ç°¶Îʱ¼äÔÚDelphiÖеÄDemosÖз¢ÏÖDemos\Midas\Intrcpt.dprÀý×Ó£¬ºÇºÇ£¬ÔÙ¿´Á˰ëÌìµÄVCL·¢ÏÖ¿ÉÒÔ½«Client¶Ë·¢Ë͵ĸøServerµÄÊý¾Ý£¬ºÍServer·¢Ë͸øClientµÄÊý¾ÝÊÇ¿ÉÒÔ½øÐÐѹËõµÄ¡£ºÇºÇ£¬²»¸Ò²ØË½£¬Share¸ø´ó¼Ò¡£
1:
×¼±¸¹¤×÷,ÏÈdelphi¹âÅÌÖеÄ\info\extras\zlib\zlib.pas½øÐбàÒȻºócopy µ½lib·¾¶ÖУ¬ÒòΪҪѹËõÊý¾Ý£¬±ØÐëÒªÓÐѹËõ¹¦ÄÜ£¬Õâ¸ödelphiÒѾ×Ô´ø£¬ËüÊÇ»ùÓÚÁ÷µÄ·½Ê½¶Ô½Ó¿ÚIDataBlock(TDataBlockʵÏÖ£¬Æäʵ¾ÍÊǶÔTMemoryStreamµÄ²Ù×÷)Êý¾Ý½øÐÐѹËõºÍ½âѹµÄ¡£×öÁËÕâ¸öºó£¬²ÅÄܽøÐÐÏÂÃæµÄ¹¤×÷¡£
2:
Open \Demos\Midas\Intrcpt\Intrcpt.dpr
complier....(ÈçûÓÐ×öµÚÒ»²½£¬ºÙºÙ...)
Éú³ÉIntrcpt.dll
½«Intrcpt.dll copy to System directory,»òÕßÄãµÄ³ÌÐòÏÂÃæ¡£
×¢²áËü£ºregsrvr32 Intrcpt.dll (Ϊʲô£¬Õâ¸öÂï...)
¼ÇסIntrcpt.dprµÄÄǸöGUID,ÄãÒ²¿ÉÒÔ×Ô¼ºÖØÐÂÉú³ÉÒ»¸ö(°´Shift+Ctrl+G)
3:
Server:
Open scktsrvr.exe£¬ÏàП÷λ¶¼ºÜÊìϤÄǽçÃæ£¬¶Ë¿Ú(TListbox)£¬Thread Cache Size(TEdit), GUID(TEdit),ºÃ£¬ÎÒÃÇÒª×öµÄÊ£¬¾ÍÊǽ«×¢²áµÄIntrcpt.dllÄǸöGUIDÌîµ½Õâ¸öGUID(TEdit)¿ò¿òÖУ¬
Ö»ÐèÌî×Ô¼º³ÌÐòµÄµÄÄǸö¶Ë¿ÚµÄGUID°¡£¬±ðÂÒÌÈç¹ûÓбðÈËÓÃÕâ¸ö³ÌÐò£¬³öÁËʲô£¬±ðÕÒÎÒ¡£OK,Apply.
Client:
ÄãдµÄ³ÌÐòÖп϶¨ÓÐTSocketConnection,ËüÓиöÊôÐÔInterceptGUID: string;ºÃÁË£¬½«Intrcpt.dllµÄGUIDÌîÉÏÈ¥£¬ËüÊǸúServerÖеÄÒ»ÑùµÄ¡£OK.»¹ÓбðÍüÁË£¬Regsrvr32 intrcpt.dll ÔÚÄãµÄ¿Í»§¶Ë¡£²»È»£¬³ÌÐòËä²»»áraise,µ«ÊÇServer´«¹ýÀ´µÄÊý¾ÝÊÇѹËõµÄ....
ºÃÁË£¬ºÇºÇ¡£¾ÍÕâЩÁË¡£3²½Ö裬ºÜÇå³þ°É(²»»á°É£¬»¹²»¶®£¬µ¹)
ÔÀí
scktsrvr.exeÆäʵÊÇÒ»¶ÑTServerSocket,Ò»¸ö¶Ë¿Ú´ú±íÁËÒ»¸öTServerSocket,ÿ¸öTServerSocketÊÇ»ùÓÚ¶àÏ̷߳½Ê½Óë¿Í»§¶Ë½øÐÐÊý¾Ý½»»»¡£ËüдÁ˸öTServerClientThread(ÔÚ·þÎñ¶ËÖеĿͻ§¶Ë)µÄÀ©Õ¹
,¶à¼ÓÁ˶Կͻ§¶ËÊý¾Ý½ÓÊյĹÜÀí½âÎö£¬»¹ÓÐActivityDateTime,GUID£¬Ò»°ã²»¹ÜËü¡£µ«ÊÇÎÒÃÇÓõ½µÄѹËõÖ»ÊǸúÕâ¸öGUIDÓйأ¬ÆäËü·Ñ»°ÉÙ˵¡£
Server½ÓÊÜÒ»¸öClientÁ¬½Ó,Ôò¼ÓÒ»¸öTServerClientThreadµ½±¾µØÖУ¬ÓÃÀ´¼à¿ØClient Read ºÍCloseʼþ£¬ËùÒÔServerÖеÄscktsrvrÖÐÎÒÃÇÖ»ÒªÁ˽âÁËTServerClientThre
Ïà¹ØÎĵµ£º
Ò») ʹÓö¯Ì¬´´½¨µÄ·½·¨
Ê×ÏÈ´´½¨ Excel ¶ÔÏó£¬Ê¹ÓÃComObj:
var ExcelApp: Variant;
ExcelApp := CreateOleObject( 'Excel.Application'  ......
ÎÒÃÇÄÜ¿´µ½ÒÔÏ´úÂë
var pSource,pDest:PChar;
len: integer;
.......................//һЩ´úÂë
Move(pSource,pDest,len); //´íÎó
Move(pSource^,pDest^,len); //ÕýÈ·
¿´ÆðÀ´È·ÊµºÃÏñÊÇ´«Öµ£¬¶ø²»ÊÇ´«µØÖ·£¬µ«ÊǸ÷λ±ðÍüÁË£¬Õâ²»ÊÇC£¬C++£¬¶øÊÇDelphi
Object Pascal,ËùÒÔ£¬¾ø²»ÄÜ´Óº¯Êýµ ......
Ò»¡¢Ê¹ÓÃÎļþÁ÷µÄ·½·¨½øÐп½±´£¬µ±È»¡£Í¬ÑùµÄµÀÀí£¬ÄãÒ²¿ÉÒÔʹÓÃÄÚ´æÁ÷µÈ·½·¨½øÐÐÎļþµÄ¿½±´£¬ÔÀíÊÇÒ»ÑùµÄ¡£
procedure copyfile(sourcefilename,targetfilename : String);
var f1, f2: tfilestream;
begin
f1 := tfilestream.Create(sourcefilename, fmopenread);
try
f2 := tfilestream ......
¶¯Ì¬Á´½Ó¿âÊÇÒ»¸öÄܹ»±»Ó¦ÓóÌÐòºÍÆäËüµÄDLLµ÷ÓõĹý³ÌºÍº¯ÊýµÄ¼¯ºÏÌå,ËüÀïÃæ°üº¬µÄÊǹ«¹²´úÂë»ò×ÊÔ´¡£ÓÉÓÚDLL´úÂëʹÓÃÁËÄÚ´æ¹²Ïí¼¼Êõ,ÔÚijЩµØ·½windowsÒ²¸øÁËDLLһЩ¸ü¸ßµÄȨÏÞ,Òò¶øDLLÖпÉÒÔʵÏÖһЩһ°ã³ÌÐòËù²»ÄÜʵÏֵŦÄÜ,ÈçʵÏÖwindowsµÄHOOK¡¢ISAPIµÈ¡£Í¬Ê±,DLL»¹Îª²»Í¬ÓïÑÔ¼ä´úÂë¹²ÏíÌṩÁËÒ»Ìõ·½±ãµÄ;¾¶¡£Òò¶øD ......