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£ºÏß³ÌÆô¶¯º¯Êý¡£
ÕâÈý¸öº¯ÊýµÄ¹¦ÄÜÊÇ»ù±¾ÏàͬµÄ£¬ËüÃǶ¼Êǽ«Ï̺߳¯ÊýÖеĴúÂë·Åµ½Ò»¸ö¶ÀÁ¢µÄÏß³ÌÖÐÖ´Ð
Ïà¹ØÎĵµ£º
ÎÒÃÇÄÜ¿´µ½ÒÔÏ´úÂë
var pSource,pDest:PChar;
len: integer;
.......................//һЩ´úÂë
Move(pSource,pDest,len); //´íÎó
Move(pSource^,pDest^,len); //ÕýÈ·
¿´ÆðÀ´È·ÊµºÃÏñÊÇ´«Öµ£¬¶ø²»ÊÇ´«µØÖ·£¬µ«ÊǸ÷λ±ðÍüÁË£¬Õâ²»ÊÇC£¬C++£¬¶øÊÇDelphi
Object Pascal,ËùÒÔ£¬¾ø²»ÄÜ´Óº¯Êýµ ......
ÔÚDelphiÓ¦ÓóÌÐòÖÐʹÓÃDLL
¡¡¡¡Delphi²»½ö¿Éµ÷ÓÃC£«£«²úÉúµÄDLLÄ£¿é£¬Í¬ÑùC£«£«³ÌÐòÒ²¿Éµ÷ÓÃDelphiËù²úÉúµÄDLL²¿¼þ¡£ÕâÑù½»»¥µ÷Óã¬ÎÞÐëÖظ´¿ª·¢£¬´ó´óËõ¶ÌÁËÉú²úÖÜÆÚ¡£
¡¡¡¡DelphiÓëVisualBasic¡¢VisualFoxProµÈÈí¼þÒ»Ñù£¬ÊôÓÚRAD¹¤¾ß£¨¿ìËÙÓ¦Óÿª·¢¹¤¾ß£©¡£ÊʺϿª·¢32λ»ò16λ£¯32λ»ìºÏÓ¦ÓóÌÐò¡£DelphiËùÊ¹Ó ......
ÓÉÓÚ×é¼þÌṩµÄ·½Ê½²»Í¬£¬ËùÒÔ°²×°µÄ·½·¨Ò²ÊDz»Ò»ÑùµÄ£¬ÏÂÃæ¾ÍÄ¿Ç°³£¼ûµÄ¸÷ÖÖÐÎʽµÄ×é¼þµÄ°²×°·½·¨½éÉÜһϡ£
1 Ö»ÓÐÒ»¸öDCUÎļþµÄ×é¼þ¡£DCUÎļþÊDZàÒëºÃµÄµ¥ÔªÎļþ£¬ÕâÑùµÄ×é¼þÊÇ×÷Õß²»Ïë°ÑÔ´Â빫²¼¡£Ò»°ãÀ´Ëµ£¬×÷Õß±ØÐë˵Ã÷´Ë×é¼þÊʺÏDelphiµÄÄÄÖÖ°æ±¾£¬Èç¹û°æ±¾²»¶ ......
// ÅжÏÊÇ·ñÊÇÊýÖµÐÍ By yangxiao 2007.7.21
function isNumeric(strText: WideString): Boolean;
var
s: string;
i, l, p: Integer;
begin
Result := False;
l := Length(strText);
if l = 0 then Exit;
s := '';
for i:=1 to l do
......