ʹÓÃDelphi±àдÆåÅÆÀàÓÎÏ· »ù´¡Æª(2)
¶ÔÓÚÍøÂçÓÎÏ·À´Ëµ£¬ËüºÍµ¥»ú°æÓÎÏ·×î´óµÄÇø±ð¾ÍÔÚÓÚÍøÂçͨÐŲ¿·Ö¡£¿ÉÒÔ˵£¬ÍøÂçͨÐÅÊǹ¹³ÉÍøÓεÄ×î»ù±¾ÔªËØ¡£ÔÚÕâÀïÎÒ²»ÏëÏêϸµÄÂÛÊöÈçºÎʹÓÃDELPHIÔÚWINDOWSϽøÐÐÍøÂç±à³Ì£¬ÒòΪÕâÊÇÒ»¸ö·Ç³£¸´ÔӵϰÌâ¡£ÕâÀïÎÒÖ»ÊÇÏë˵Ã÷ÔÚÎÒÉè¼ÆµÄÆåÅÆÀàÓÎÏ·ÖÐÈçºÎʵÏÖÓÎÏ·ÍøÂ粿·ÖµÄ¡£
¶ÔÓÚWINDOWSÀ´Ëµ£¬ËüµÄͨÐÅÄ£ÐÍ´ó¸Å·ÖΪ5ÖÖ¡£·Ö±ðÊÇ£º
1£ºSELECTÄ£ÐÍ¡£
2£ºWSAAsynSelectÄ£ÐÍ¡£
3£ºWSAEventSelectÄ£ÐÍ¡£
4£ºIOÖØµþÄ£ÐÍ
5£ºÍê³É¶Ë¿ÚÄ£ÐÍ¡£
¶ÔÓÚÐÔÄÜÀ´Ëµ£¬Íê³É¶Ë¿Ú¿ÉÒÔ¹ÜÀíÉÏÍòÁ¬½Ó£¨ÀíÂÛÁ¬½ÓÊýÁ¿¿ÉÒÔ´ïµ½65535¸ö£©£¬ËùÒÔÎÒÑ¡ÔñËüÀ´×÷ΪÎÒÓÎÏ··þÎñÆ÷µÄͨÐÅÄ£ÐÍ¡£
ÓÉÓÚÓÎÏ·¿Í»§¶ËºÍÓÎÏ··þÎñÆ÷µÄÁ¬½ÓÖ»ÐèÒªÒ»Ìõ¾Í¿ÉÒÔ£¬ËùÒÔÎÒÑ¡ÔñÁËSelectÄ£ÐÍ×÷Ϊ¿Í»§¶ËͨÐÅÄ£ÐÍ¡£
¹ØÓÚÈçºÎ±àдÍê³É¶Ë¿ÚÒÔ¼°ÔÚÍê³É¶Ë¿ÚÖÐÈçºÎ¼ÓÈëÐÄÌø£¬ÈçºÎ±ÜÃâÍøÂçͨÐÅÖеÄÕ³°üÏÖÏóÔÚÎÒÒÔǰµÄBLOGÖÐÒѾÓÐÁËÏêϸµÄ½²½â£¬ÓÉÓÚÆª·ùÌ«¶à£¬ÎÒÕâÀï¾Í²»ÔÚ½«ÆäÌù³ö¡£ÏêϸµÄ¿ÉÒԲο´ÎÒµÄBLOG ¡¶DELPHIÖÐÍê³É¶Ë¿Ú(IOCP)µÄ¼òµ¥·ÖÎö£¨1£©¡·-¡¶ DELPHIÖÐÍê³É¶Ë¿Ú(IOCP)µÄ¼òµ¥·ÖÎö£¨4£©¡·ºÍ¡¶ÍøÂçͨÐÅÖеÄÐÄÌø»úÖÆµÄʵÏÖ£¡¡·
µ«ÊÇÔÚÎÒ×î½üÖØÐ¼ì²é´úÂëµÄʱºò·¢ÏÖÎÒÒÔǰ¹ØÓÚIOCPµÄһЩ´¦Àí·½Ê½²»ºÏÊÊ»òÕßÓÐЩµØ·½ÊÇ´íÎóµÄ£¬ÎÒÒѾÔÚÒÔǰµÄBLOGÌû×ÓÖÐ×öÁËÏà¹ØµÄÐ޸ġ£
ÔÚÕâÀïÎÒÃÇÌÖÂÛÒ»ÏÂÈçºÎʵÏÖ¿Í»§¶ËͨÐÅÄ£ÐÍ(SelectÄ£ÐÍ)¡£¶ÔÓÚÊìÏ¤ÍøÂç±à³ÌµÄ³ÌÐòÔ±À´Ëµ£¬±àдһ¸öSELECTͨÐÅÄ£ÐÍÊÇÒ»¼þºÜ¼òµ¥µÄÊ£¬ÒòΪËüÊÇ5ÖÐͨÐÅÄ£ÐÍÖÐ×î¼òµ¥µÄÒ»ÖÖ¡£
±àдselectÄ£Ð͵ĴúÂëÈçÏ£º
Var
Fsocket£ºTsokcet;
procedure Star;
var
CliAddrIn:TSockAddrIn;
hThread:THandle;
ThreadID,outByte:DWORD;
keep_alive,out_keep_alive:TTimeVal;
iAddrSize,opt,I:Integer;
begin
//¼ÓÔØSOCKET,ÎÒʹÓõÄÊÇ2.2°æÎªÁ˺óÃæ·½±ã¼ÓÈëÐÄÌø
if WSAStartUp($202, wsData) <> 0 then
begin
WSACleanup();
end;
//´´½¨Ò»¸öÌ×½Ó×Ö
Fsocket:=socket(AF_INET,SOCK_STREAM,0);
if Fsocket =SOCKET_ERROR then
begin
closesocket(Fsocket);
end
else
begin
//ÕâÀïÌîÈëʵ¼ÊµÄ·þÎñÆ÷IPµØÖ·ºÍ·þÎñÆ÷¼àÌý¶Ë¿Ú
CliAddrIn.sin_addr.s_addr:=inet_addr(Pchar(‘127.0.0.1’));
Ïà¹ØÎĵµ£º
Õª
Òª£º±¾ÎÄͨ¹ýʹÓÃDelphiºÍWebServices¼¼Êõ¿ª·¢¶ÌÐÅÓ¦ÓóÌÐòµÄʵÀýÏêϸµÄ½éÉÜÁËÈçºÎÔÚDelphiÖпª·¢»ùÓÚWebServices¼¼Êõ
µÄÓ¦ÓóÌÐò¡£
¡¡¡¡¹Ø¼ü×Ö£ºDelphi£»WebService£»¶ÌÐÅÓ¦ÓóÌÐò¿ª·¢
¡¡¡¡Ò»ÌáÆð»ùÓÚWebServices¼¼ÊõµÄÓ¦ÓóÌÐò¿ª·¢£¬Ò»°ãÈËÊ×ÏÈÏëµ½µÄ¿ª·¢¹¤¾ßÊÇVS.net£¬Æäʵ×÷Ϊ¿ìËÙÓ¦ÓóÌÐò¿ª·¢¹¤¾ß
(RAD)µ ......
ÒýÓÃ×Ô£ºhttp://www.delphifans.com/infoview/Article_6445.html
Delphi ¹Ø¼ü×ÖÏê½â
absolute
//ËüʹµÃÄãÄܹ»´´½¨Ò»¸öбäÁ¿, ²¢ÇҸñäÁ¿µÄÆðʼµØÖ·ÓëÁíÒ»¸ö±äÁ¿Ïàͬ.
var
Str: string[32];
StrLen: Byte absolute Str;
//Õâ¸öÉùÃ÷Ö¸¶¨Á˱äÁ¿StrLenÆðʼµØÖ·ÓëStrÏàͬ.
//ÓÉÓÚ×Ö·û´®µÄµÚ0¸öλ ......
1£®ÒýÑÔ
ÔÚÀûÓÃdelphi¿ª·¢Ó¦ÓóÌÐòµÄʱºò£¬Í¨³£ÎÒÃÇÒªÉè¼Æ³öºÜ¶à¸÷ÖÖ¸ñʽµÄÎĵµ¡¢±¨±í£¬¾³£Òª½øÐÐÎļþµÄ´´½¨¡¢±à¼¼°Ð޸ģ¬ËäÈ»delphi±¾ÉíÌṩÁ˺ܶàÉè¼Æ±¨±íµÄ¿Ø¼þ»ò·½·¨£¬µ«ÊÇ´æÔÚÃ÷ÏԵIJ»×㣬±ÈÈçÖÐÎÄÊäÈ룬Êý¾Ý¸ñʽµÄ¿ØÖƵȲÙ×÷ÆðÀ´±È½ÏÂé·³¡£ÀûÓôó¼Ò¶¼ºÜÊìϤµÄoffice¹¤¾ß½áºÏ¿ª·¢£¬Äܹ»ºÜºÃµÄ½â¾öÕâ·½ÃæµÄÎÊÌâ¡£ÒÔÏ ......
DirectoryExists('C:\WINDOWS'):Boolean;¼ì²âÎļþ¼ÐÊÇ·ñ´æÔÚ£¡
FileExists('c:\Dir.txt'):Boolean;¼ì²âÎļþÊÇ·ñ´æÔÚ£¡
EDIT×é¼þ
OnChange µ±±à¼¿òÖеÄÄÚÈÝ·¢Éú±ä»¯Ê±´¥·¢¸Ãʼþ
OnKeyPress µ±°´ÏÂÒ»¸ö°´¼üʱ£¬´¥·¢¸Ãʼþ
OnEnter ±à¼¿ò»ñµÃÊäÈë½¹µãʱ£¬´¥·¢¸Ãʼþ
MEMO×éºÏ
WordWrap ÓÃÓÚÉ趨Momo×é¼þÊÇ·ñ¾ßÓÐ×Ô¶ ......
TStringsÊÇÒ»¸ö³éÏóÀ࣬ÔÚʵ¼Ê¿ª·¢ÖУ¬ÊdzýÁË»ù±¾ÀàÐÍÍ⣬ӦÓõÃ×î¶àµÄ¡£
³£¹æµÄÓ÷¨´ó¼Ò¶¼ÖªµÀ£¬ÏÖÔÚÀ´ÌÖÂÛËüµÄһЩ¸ß¼¶µÄÓ÷¨¡£
ÏȰÑÒªÌÖÂ۵öÊôÐÔÁгöÀ´£º
1¡¢CommaText
2¡¢Delimiter & DelimitedText
3¡¢Names & Values & ValuefromIndex
ÏÈ¿´µÚÒ»¸ö£ºCommaText¡£ÔõôÓÃÄØ£¿ÓôúÂë˵»°£º
const ......