David I̸DelphiÏÖ×´ÓëδÀ´
¸ÅÒª
×ÔÈ¥ÄêCodeGear±»Ó¢°Í¿¨µÏŵ£¨Embarcadero Technologies£©ÊÕ¹ººó£¬´ó¼Ò¶ÔDelphiµÄδÀ´·¢Õ¹·Ç³£¹ØÐÄ¡£½üÈÕ£¬InfoQÖÐÎÄÕ¾ÓÐÐÒ¶ÔDavid I½øÐÐÁ˶À¼Òר·Ã£¬ÒÔÁ˽â¸ü¶à¹ØÓÚDelphiµÄÏà¹ØÐÅÏ¢¡£
¸öÈ˼ò½é
David Intersimone£¨¼ò³ÆDavid I£©£¬Ó¢°Í¿¨µÏŵ¸ºÔ𿪷¢Õß¹ØÏµµÄ¸±×ܲúÍÊ×ϯÐû´«¹Ù£¨Chief Evangelist£©¡£David¸ºÔðÓ뿪·¢ÕßÉçÇø¿ªÕ¹ÃÜÇкÏ×÷£¬È·±£CodeGearµÄÕ½ÂÔ²úÆ·¹æ»®Âú×ã¹ã´ó¿ª·¢ÕßÓ뿪·¢ÍŶӵÄÐèÇó¡£
David±¾ÈËÊÇһλ³öÉ«µÄÈí¼þ¿ª·¢Õߣ¬³ä·Ö·¢»ÓÁË¿ª·¢ÕßÔÚÈí¼þÒµ½çµÄÖØÒªÐÔ¡£23Äêǰ£¬David×÷Ϊ²úÆ··þÎñ¾Àí¼ÓÈëµ½Borland£¬Ôø¾µ£Èιý¹¤³Ì/¿ª·¢Ààְ룬´´½¨ÁË¿ª·¢Õß¹ØÏµ²¿ÃÅ¡£ÔÚ¼ÓÈëBorland֮ǰ£¬ËûÔøÊÇSoftsel Computer Products£¨¼´ÏÖÔÚµÄMerisel¹«Ë¾£©µÄ²úÆ··þÎñ¾Àí¡£
DavidÓµÓмÓÀû¸£ÄáÑÇÖÝÖÝÁ¢Àí¹¤´óѧµÄ¼ÆËã»ú¿ÆÑ§Ñ§Ê¿Ñ§Î»¡£
DavidÄúºÃ£¬ºÜ¸ßÐ˽ÓÊÜInfoQÖÐÎÄÕ¾µÄ²É·Ã£¬ÄúÄܸøÎÒÃǽéÉÜÒ»ÏÂÄú×Ô¼ºÂð£¿
ºÃµÄ£¬ÎÒÊÇDavid Intersimone£¬´ó¼Ò¶¼½ÐÎÒDavid I£¬ÏÖÔÚÊǸºÔ𿪷¢ÕßÏîÄ¿ºÍ¹ØÏµµÄ¸±×ܲá¢Ê×ϯ²¼µÀʦ£¬°ïÖúÈ«ÊÀ½çµÄ¿ª·¢ÕßʹÓÃÎÒÃǹ«Ë¾µÄ¸÷ÖÖ²úÆ·¡£
ÄúÀ´ÖйúÒѾºÜ¶à´ÎÁË£¬Õâ´ÎÀ´¸ø´ó¼Ò´øÀ´ÁËʲôÐÂÏʵÄÐÅÏ¢ÄØ£¿
ÎÒÕâ´Î¹ýÀ´Ö÷ÒªÊÇÀ´·ÃÎÊһЩ¿Í»§£¬»¹ÓÐѧÉú£¬ÏëÌýÒ»ÏÂËûÃǶÔÎÒÃǵIJúÆ·ÓÐʲô·´À¡£¬²¢ÇÒÏòËûÃÇÐû´«Ò»Ï£¬ÒòΪ¹ýÈ¥ÎÒÃÇÊÇBorlandºÍJBuilder£¬¶øÏÖÔÚÎÒÃÇÊÇÓ¢°Í¿¨µÏŵ¹«Ë¾£¬ÎÒÃÇÖ÷Òª¹Ø×¢µÄÊÇÊý¾Ý¿â¹¤¾ßºÍ¿ª·¢¹¤¾ß£¬»¹ÓÐÆäËûµÄ³ÌÐò£¬±à³ÌµÄ¹¤¾ß¡£ÎÒ»¹ÓÐÒ»¸öÈÎÎñ¾ÍÊÇÏòÎÒÃǵĿͻ§½éÉÜÒ»ÏÂÎÒÃǵÄÒ»¸öвúÆ·½ÐAll Access£¬Èç¹ûÎÒÃǵÄÓû§¼ÓÈëÕâ¸öAll AccessÏîÄ¿¾Í»áµÃµ½Ò»¸öͨÓÃ×¢²áºÅ£¬¿ÉÒÔʹÓÃ17µ½18¸ö²úÆ·£¬ÒòΪÎÒÃǵĿͻ§¿ÉÄÜÊÇ×ö±à³Ì£¬Ò²¿ÉÄÜÊǼܹ¹Ê¦£¬Ò²¿ÉÄÜÊÇÊý¾Ý¿âµÄ¹ÜÀíÔ±£¬ËùÒÔÓû§ÈÔÈ»¿ÉÒÔÑ¡Ôñ·Ö±ð¹ºÂòÎÒÃǵŤ¾ß£¬Ò²¿ÉÒÔ¹ºÂòAll accessÕû¸öµÄ¹¤¾ß°ü¡£
ÎÒÃǵĶÁÕß´ó¶àÊý¶¼ÊǼܹ¹Ê¦ºÍ¸ß¼¶µÄ¿ª·¢ÈËÔ±£¬ÄúÏëºÍÎÒÃÇ·ÖÏíÄÇЩ×ÊÑ¶ÄØ£¿
ÔÚÓ¢°Í¿¨µÏŵµÄ¹«Ë¾ÆìÏ£¬ÎÒÃÇÓÐÕë¶ÔÊý¾Ý¿â¼Ü¹¹Ê¦µÄ²úÆ·ÃûΪER Studio£¬ÓÃ×÷Êý¾Ý¿âµÄ½¨Ä£¹¤×÷£¬¶ÔÓÚÓ¦Óÿª·¢ÈËÔ±£¬ÎÒÃÇÒ²ÓÐIDEϵÁеÄUMLÄ£ÐÍÀ´°ïÖúËûÃǽøÐпª·¢¡£ËùÒÔÎÒÃÇÕû¸öµÄÊý¾Ý¿âÓ¦ÓúÍÊý¾Ý¿âµÄÉè¼Æ·½Ãæ¶¼ÓÐÏà¹ØµÄ²úÆ·£¬¿ÉÒÔ°ïÖúÎÒÃǵÄÓû§£¬¸øËûÃÇÌṩ×îºÃµÄ¹¤¾ß£¬À´ÊÊÓ¦¶à¿ò¼ÜÒÔ¼°¶à²Ù×÷ϵͳµÄ»·¾³¡£
Äú¸ºÔðµÄEDN£¨Embarcadero Developer Network£¬http://edn.embarcadero.com/£©ÉϸöÔ½øÐÐÁ˸İ棬аæµÄEDN½ÏÒÔǰ×öÁËÄÄЩ¸Ä½øÄØ£¿
Ê×ÏÈÎÒÃÇËù×öµÄÊÇ
Ïà¹ØÎĵµ£º
ÓÃwebbrowser¿Ø¼þµÇ¼ºÍÏÔÊ¾ÍøÒ³
MSHTMLÊÇ΢Èí¹«Ë¾µÄÒ»¸öCOM×é¼þ£¬¸Ã×é¼þ·â×°ÁËHTMLÓïÑÔÖеÄËùÓÐÔªËØ¼°ÆäÊôÐÔ£¬Í¨¹ýÆäÌṩµÄ±ê×¼½Ó¿Ú£¬¿ÉÒÔ·ÃÎÊÖ¸¶¨ÍøÒ³µÄËùÓÐÔªËØ£®MSHTML¶ÔÏóÄ£ÐÍÊÇÓÉһЩ¶ÔÏóºÍ¼¯ºÏ×é³ÉµÄ£®´¦ÓÚ¸ù²¿µÄÊÇHTML£¬ÃèÊöÁË´ò¿ªÒ³ÃæµÄ1¸ö´°¿Ú£¬°üÀ¨Ò»ÏµÁм¯ºÏºÍ¶ÔÏó¡£ÈçFrames¼¯ºÏ£¬History£¬Location£¬Navigat ......
ǰÑÔ
¡¡¡¡ÎÒдDelphi³ÌÐòÊÇ´ÓMISϵͳÈëÃŵģ¬¿ªÊ¼³¢ÊÔ×Óϵͳ»®·ÖµÄʱºò²ÉÓõÄÊÇMDI´°ÌåµÄ½á¹¹¡£Ëæ×Åϵͳ¹¦ÄܵÄÀ©³ä£¬²»¶ÏÓÐеÄ×Óϵͳ¼ÓÈëϵͳÖУ¬µ¥¸ö¹¤³Ì»á±äµÃ·Ç³£´ó£¬Ã¿´Î×öÒ»µãÐ޸Ķ¼ÒªÖØÐ±àÒ룬µ¥¸ö¹¤³ÌµÄÐÎʽҲ²»ÀûÓÚÍŶÓÐ×÷¡£ÎªÁËÌá¸ß¹¤×÷ЧÂÊ£¬ÎÒÏ£ÍûÀûÓÃDLL¶¯Ì¬Á´½Ó¿âµÄÐÎʽʵÏÖ²å¼þ½á¹¹µÄ±à³Ì¡£
¡¡¡ ......
procedure Delay(msecs:integer);
var
Tick: DWord;
Event: THandle;
begin
Event := CreateEvent(nil, False, False, nil);
try
Tick := GetTickCount + DWord(msecs);
while (msecs > 0) and (MsgWaitForMultipleObjects(1, Event, False, msecs, QS_ALLINPUT) <&g ......
procedure mc_SplitStr(sourStr:String;splitChar:String;desLst:TStringList);
var
tmpStr:String;
sValue:String;
iStart,iPos:Integer;
begin
try
desLst.Clear; //ºÜÖØÒª£¬·ñÔò£¬»áÒ» ......