delphi¶àÏß³Ì
DelphiÖÐÓÐÒ»¸öÏß³ÌÀàTThreadÊÇÓÃÀ´ÊµÏÖ¶àÏ̱߳à³ÌµÄ£¬Õâ¸ö¾ø´ó¶àÊýDelphiÊé½å¶¼ÓÐ˵µ½£¬µ«»ù±¾É϶¼ÊǶÔTThreadÀàµÄ¼¸¸ö³ÉÔ±×÷Ò»¼òµ¥½éÉÜ£¬ÔÙ˵Ã÷Ò»ÏÂExecuteµÄʵÏÖºÍSynchronizeµÄÓ÷¨¾ÍÍêÁË¡£È»¶øÕâ²¢²»ÊǶàÏ̱߳à³ÌµÄÈ«²¿£¬ÎÒд´ËÎĵÄÄ¿µÄÔÚÓÚ¶Ô´Ë×÷Ò»¸ö²¹³ä¡£
Ï̱߳¾ÖÊÉÏÊǽø³ÌÖÐÒ»¶Î²¢·¢ÔËÐеĴúÂë¡£Ò»¸ö½ø³ÌÖÁÉÙÓÐÒ»¸öỊ̈߳¬¼´ËùνµÄÖ÷Ï̡߳£Í¬Ê±»¹¿ÉÒÔÓжà¸ö×ÓÏ̡߳£µ±Ò»¸ö½ø³ÌÖÐÓõ½³¬¹ýÒ»¸öÏß³Ìʱ£¬¾ÍÊÇËùνµÄ“¶àÏ߳̔¡£
ÄÇôÕâ¸öËùνµÄ“Ò»¶Î´úÂë”ÊÇÈçºÎ¶¨ÒåµÄÄØ£¿Æäʵ¾ÍÊÇÒ»¸öº¯Êý»ò¹ý³Ì£¨¶ÔDelphi¶øÑÔ£©¡£
Èç¹ûÓÃWindows APIÀ´´´½¨Ï̵߳ϰ£¬ÊÇͨ¹ýÒ»¸ö½Ð×öCreateThreadµÄAPIº¯ÊýÀ´ÊµÏֵģ¬ËüµÄ¶¨ÒåΪ£º
HANDLE CreateThread(
LPSECURITY_ATTRIBUTES lpThreadAttributes,
DWORD dwStackSize,
LPTHREAD_START_ROUTINE lpStartAddress,
LPVOID lpParameter,
DWORD dwCreationFlags,
LPDWORD lpThreadId
);
Æä¸÷²ÎÊýÈçËüÃǵÄÃû³ÆËù˵£¬·Ö±ðÊÇ£ºÏß³ÌÊôÐÔ£¨ÓÃÓÚÔÚNTϽøÐÐÏ̵߳ݲȫÊôÐÔÉèÖã¬ÔÚ9XÏÂÎÞЧ£©£¬¶ÑÕ»´óС£¬ÆðʼµØÖ·£¬²ÎÊý£¬´´½¨±êÖ¾£¨ÓÃÓÚÉèÖÃÏ̴߳´½¨Ê±µÄ״̬£©£¬Ïß³ÌID£¬×îºó·µ»ØÏß³ÌHandle¡£ÆäÖÐµÄÆðʼµØÖ·¾ÍÊÇÏ̺߳¯ÊýµÄÈë¿Ú£¬Ö±ÖÁÏ̺߳¯Êý½áÊø£¬Ïß³ÌÒ²¾Í½áÊøÁË¡£
Õû¸öÏ̵߳ÄÖ´Ðйý³ÌÈçÏÂͼËùʾ£º
ÒòΪCreateThread²ÎÊýºÜ¶à£¬¶øÇÒÊÇWindowsµÄAPI£¬ËùÒÔÔÚC Runtime LibraryÀïÌṩÁËÒ»¸öͨÓõÄÏ̺߳¯Êý£¨ÀíÂÛÉÏ¿ÉÒÔÔÚÈκÎÖ§³ÖÏ̵߳ÄOSÖÐʹÓã©£º
unsigned long _beginthread(void (_USERENTRY *__start)(void *), unsigned __stksize, void *__arg);
DelphiÒ²ÌṩÁËÒ»¸öÏàͬ¹¦ÄܵÄÀàËÆº¯Êý£º
function BeginThread(SecurityAttributes: Pointer; StackSize: LongWord; ThreadFunc: TThreadFunc; Parameter: Pointer; CreationFlags: LongWord; var ThreadId: LongWord): Integer;
ThreadFunc£ºÏ̺߳¯Êý£¬
BeginThread£ºÏß³ÌÆô¶¯º¯Êý¡£
ÕâÈý¸öº¯ÊýµÄ¹¦ÄÜÊÇ»ù±¾ÏàͬµÄ£¬ËüÃǶ¼Êǽ«Ï̺߳¯ÊýÖеĴúÂë·Åµ½Ò»¸ö¶ÀÁ¢µÄÏß³ÌÖÐÖ´Ð
Ïà¹ØÎĵµ£º
Delphi²Ù×÷×¢²á±í²½ÖèÈçÏ£º
-------------------------------------
1£©ÔÚUsesÖÐÌí¼ÓRegistryµ¥Ôª£»
2£©ÉùÃ÷TRegistry¶ÔÏó£»
3£©´´½¨TRegistry¶ÔÏó£»
4£©Ö¸¶¨¸ù¼ü£»
----------------try------------------
5£©´ò¿ªÐèÒª²Ù×÷µÄÖ÷¼ü£»
6£©¶Áд²Ù×÷£»
7£©±£´æ²¢¹Ø±ÕÖ÷¼ü£»
--------------finally----------------
......
ÓÉÓÚ×é¼þÌṩµÄ·½Ê½²»Í¬£¬ËùÒÔ°²×°µÄ·½·¨Ò²ÊDz»Ò»ÑùµÄ£¬ÏÂÃæ¾ÍĿǰ³£¼ûµÄ¸÷ÖÖÐÎʽµÄ×é¼þµÄ°²×°·½·¨½éÉÜһϡ£
1 Ö»ÓÐÒ»¸öDCUÎļþµÄ×é¼þ¡£DCUÎļþÊDZàÒëºÃµÄµ¥ÔªÎļþ£¬ÕâÑùµÄ×é¼þÊÇ×÷Õß²»Ïë°ÑÔ´Â빫²¼¡£Ò»°ãÀ´Ëµ£¬×÷Õß±ØÐë˵Ã÷´Ë×é¼þÊʺÏDelphiµÄÄÄÖÖ°æ±¾£¬Èç¹û°æ±¾²»¶ ......
»ñÈ¡post£¬»òÕßget·µ»ØµÄcookie£¬³ýÁ˹ýÂË·µ»ØµÄ×Ö·û´®Ö®Í⣬×î¼òµ¥µÄ·½·¨ÊÇʹÓÃidhttpµÄCookieManagerÊôÐÔ
±ÈÈç»ñµÃIDhttp·µ»ØµÄÈ«²¿Cookie
if idhttp1.CookieManager.CookieCollection.Count > 0 then
for i := 0 to idhttp1.CookieManager.CookieCollection.Count - 1 do
temp := temp + idhttp1.Cooki ......
Client:TSocketConnection ºÍServer: Scktsrvr¹ØÏµ----ѹËõÊý¾Ý´«Êä
Ò»Ö±ÓÃSocketConnectionºÍ·þÎñ¶ËµÄ´«ÊäÊý¾ÝÔÚÈý²ãÊý¾Ý¿âÖУ¬´ÓÀ´Ã»ÓÐ×¢Òâµ½ËüÃÇÖ®¼äµÄÊý¾Ý´«Ê䣬ֻÊÇÏë×Å£¬¹ÜËüÁË£¬ÍøÂçµÄÊ£¬Ç°¶Îʱ¼äÔÚDelphiÖеÄDemosÖз¢ÏÖDemos\Midas\Intrcpt.dprÀý×Ó£¬ºÇºÇ£¬ÔÙ¿´Á˰ëÌìµÄVCL·¢ÏÖ¿ÉÒÔ½«Client¶Ë·¢Ë͵ĸøServerµÄÊ ......