Ò׽ؽØÍ¼Èí¼þ¡¢µ¥Îļþ¡¢Ãâ°²×°¡¢´¿ÂÌÉ«¡¢½ö160KB

DelphiÖи߼¶DLLµÄ±àдºÍµ÷Óü¼ÇÉ

DelphiÖи߼¶DLLµÄ±àдºÍµ÷Óü¼ÇÉ
¸ù¾ÝDelphiÌṩµÄÓÐ¹Ø DLL±àдºÍµ÷ÓõİïÖúÐÅÏ¢£¬Äã¿ÉÒԺܿìÍê³ÉÒ»°ãµÄ DLL±àдºÍµ÷ÓÃµÄ Ó¦ÓóÌÐò¡£±¾ÎĽéÉܵÄÖ÷ÌâÊÇÈçºÎ±àдºÍµ÷ÓÃÄܹ»´«µÝ¸÷ÖÖ²ÎÊý£¨°üÀ¨¶ÔÏóʵÀý£©µÄ DLL¡£ÀýÈ磬 Ö÷½Ð³ÌÐò´«µÝ¸ø DLLÒ»¸öADOConnection ¶ÔÏóʾÀý×÷Ϊ²ÎÊý£¬ DLLÖеĺ¯ÊýºÍ
¸ù¾ÝDelphiÌṩµÄÓÐ¹Ø DLL±àдºÍµ÷ÓõİïÖúÐÅÏ¢£¬Äã¿ÉÒԺܿìÍê³ÉÒ»°ãµÄ DLL±àдºÍµ÷ÓÃµÄ Ó¦ÓóÌÐò¡£±¾ÎĽéÉܵÄÖ÷ÌâÊÇÈçºÎ±àдºÍµ÷ÓÃÄܹ»´«µÝ¸÷ÖÖ²ÎÊý£¨°üÀ¨¶ÔÏóʵÀý£©µÄ DLL¡£ÀýÈ磬 Ö÷½Ð³ÌÐò´«µÝ¸ø DLLÒ»¸öADOConnection ¶ÔÏóʾÀý×÷Ϊ²ÎÊý£¬ DLLÖеĺ¯ÊýºÍ¹ý³Ìµ÷ÓÃͨ¹ý¸Ã¶ÔÏó ʵÀý·ÃÎÊÊý¾Ý¿â¡£
ÐèÒªÃ÷ȷһЩ»ù±¾¸ÅÄî¡£¶ÔÓÚ DLL£¬ÐèÒªÔÚÖ÷³ÌÐòÖаüº¬ exports×Ӿ䣬ÓÃÓÚÏòÍâ½çÌṩµ÷Óà ½Ó¿Ú£¬×Ó¾äÖоÍÊÇһϵÁк¯Êý»ò¹ý³ÌµÄÃû×Ö¡£¶ÔÓÚÖ÷½Ð·½£¨µ÷Óà DLLµÄÓ¦ÓóÌÐò»òÆäËüµÄ DLL£©£¬ ÔòÐèÒªÔÚµ÷ÓÃ֮ǰ½øÐÐÍⲿÉùÃ÷£¬¼´external±£Áô×ÖָʾµÄÉùÃ÷¡£ÕâЩÊDZàд DLLºÍµ÷Óà DLL±ØÐë ¾ß±¸µÄÒªËØ¡£
ÁíÍâÐèÒªÁ˽âObject Pascal ÖÐÓйص÷ÓÃЭÒéµÄÄÚÈÝ¡£ÔÚObject Pascal ÖУ¬¶ÔÓÚ¹ý³ÌºÍº¯Êý ÓÐÒÔÏÂÎåÖÖµ÷ÓÃЭÒ飺
ָʾ×Ö ²ÎÊý´«µÝ˳Ðò ²ÎÊýÇå³ýÕß ²ÎÊýÊÇ·ñʹÓüĴæÆ÷
register ×Ô×óÏòÓÒ ±»µ÷Àý³Ì ÊÇ
pascal ×Ô×óÏòÓÒ ±»µ÷Àý³Ì ·ñ
cdecl ×ÔÓÒÏò×ó µ÷ÓÃÕß ·ñ
stdcall ×ÔÓÒÏò×ó ±»µ÷Àý³Ì ·ñ
safecall ×ÔÓÒÏò×ó ±»µ÷Àý³Ì ·ñ
ÕâÀïµÄָʾ×Ö¾ÍÊÇÔÚÉùÃ÷º¯Êý»ò¹ý³Ìʱ¸½¼ÓÔÚÀý³Ì±êÌâÖ®ºóµÄ±£Áô×Ö£¬Ä¬ÈÏΪregister£¬¼´ÊÇ Î¨Ò»Ê¹Óà CPU¼Ä´æÆ÷µÄ²ÎÊý´«µÝ·½Ê½£¬Ò²ÊÇ´«µÝËÙ¶È×î¿ìµÄ·½Ê½£»
pascal: µ÷ÓÃЭÒé½öÓÃÓÚÏòºó¼æÈÝ£¬¼´Ïò¾ÉµÄ°æ±¾¼æÈÝ£»
cdecl: ¶àÓÃÓÚ CºÍ C++ÓïÑÔ±àдµÄÀý³Ì£¬Ò²ÓÃÓÚÐèÒªÓɵ÷ÓÃÕßÇå³ý²ÎÊýµÄÀý³Ì£»
stdcall: ºÍsafecallÖ÷ÒªÓÃÓÚµ÷ÓÃWindows API º¯Êý£»ÆäÖÐsafecall»¹ÓÃÓÚË«ÖØ½Ó¿Ú¡£
ÔÚ±¾ÀýÖУ¬½«Ê¹Óõ÷ÓÃЭÒécdecl £¬ÒòΪ±»µ÷ÓÃµÄ DLLÖУ¬Ê¹ÓõÄÊý¾Ý¿âÁ¬½ÓÊÇÓÉÖ÷½Ð·½´«µÝ µÃµ½µÄ£¬²¢ÇÒÐèÒªÓÉÖ÷½Ð·½´¦ÀíÁ¬½ÓµÄ¹Ø±ÕºÍÏú»Ù¡£
ÏÂÃæÊÇ DLLÍêÕûÔ´³ÌÐòºÍÖ÷½Ð³ÌÐòÍêÕûÔ´³ÌÐò¡£°üÀ¨ÒÔÏÂËĸöÎļþ£º
Project1.DPR {Ö÷½Ð³ÌÐò}
Unit1.PAS {Ö÷½Ð³ÌÐòµ¥Ôª}
Project2.DPR {DLL}
Unit2.PAS {DLLµ¥Ôª}
{---------- DLL Ö÷³ÌÐò Project2.DPR ----------}
library Project2;
uses
SysUtils,
Classes,
Unit2 in 'Unit2.pas' {Form1};
{$R *.RES}
{ ÏÂÃæµÄÓï¾äÓÃÓÚÏòµ÷Óøà DLLµÄ³ÌÐòÌṩµ÷ÓÃ½Ó¿Ú }
exports
DoTest; { ¹ý³ÌÀ´×Ôµ¥ÔªUnit2 }
begin
end.


Ïà¹ØÎĵµ£º

Delphi±àдϵͳ·þÎñÆß£ºÍê³É¶Ë¿ÚÑÝʾ ÊÕ²Ø

Delphi±àдϵͳ·þÎñÆß£ºÍê³É¶Ë¿ÚÑÝʾ ÊÕ²Ø
 ÔÚ¿ª·¢´óÁ¿Socket²¢·¢·þÎñÆ÷£¬Íê³É¶Ë¿Ú¼ÓÖØµþI/OÊÇÆù½ñΪֹ×îºÃµÄÒ»ÖÖ½â¾ö·½°¸£¬ÏÂÃæÊǼòµ¥µÄ½éÉÜ£º
   “Íê³É¶Ë¿Ú”Ä£ÐÍÊÇÆù½ñΪֹ×îΪ¸´ÔÓµÄÒ»ÖÖI/OÄ£ÐÍ£¬ÌرðÊʺÏÐèҪͬʱ¹ÜÀíΪÊýÖÚ¶àµÄÌ×½Ó×Ö£¬²ÉÓÃÕâÖÖÄ£ÐÍ£¬ÍùÍù¿ÉÒÔ´ïµ½×î¼ÑµÄϵͳÐÔÄÜ¡£µ«ÊÇÖ ......

Delphi±àдϵͳ·þÎñÈý£º±àдÁ½ÆÜϵͳ·þÎñ

Delphi±àдϵͳ·þÎñÈý£º±àдÁ½ÆÜϵͳ·þÎñ ÊÕ²Ø
 ²ÉÓÃÏÂÃæµÄ·½·¨£¬¿ÉÒÔʵÏÖÒ»¸öÁ½ÆÜϵͳ·þÎñ£¨¼Èϵͳ·þÎñºÍ×ÀÃæ³ÌÐòµÄÁ½ÖÖģʽ£©
¹¤³Ì´úÂ룺
program FleetReportSvr;
uses
  SvcMgr,
  Forms,
  SysUtils,
  Windows,
  SvrMain in 'SvrMain.pas' {FleetReportService: TService}, ......

³õ̽DelphiÖеIJå¼þ±à³Ì


ǰÑÔ 
¡¡¡¡ÎÒдDelphi³ÌÐòÊÇ´ÓMISϵͳÈëÃŵģ¬¿ªÊ¼³¢ÊÔ×Óϵͳ»®·ÖµÄʱºò²ÉÓõÄÊÇMDI´°ÌåµÄ½á¹¹¡£Ëæ×Åϵͳ¹¦ÄܵÄÀ©³ä£¬²»¶ÏÓÐеÄ×Óϵͳ¼ÓÈëϵͳÖУ¬µ¥¸ö¹¤³Ì»á±äµÃ·Ç³£´ó£¬Ã¿´Î×öÒ»µãÐ޸Ķ¼ÒªÖØÐ±àÒ룬µ¥¸ö¹¤³ÌµÄÐÎʽҲ²»ÀûÓÚÍŶÓЭ×÷¡£ÎªÁËÌá¸ß¹¤×÷ЧÂÊ£¬ÎÒÏ£ÍûÀûÓÃDLL¶¯Ì¬Á´½Ó¿âµÄÐÎʽʵÏÖ²å¼þ½á¹¹µÄ±à³Ì¡£
¡¡¡ ......

delphi ÖеÄdelayº¯Êý

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 ......

delphi ϵÄÈÕÆÚ¼ÆËã

  ÔÚÏîÄ¿ÖУ¬ÐèÒª×öÒ»¸öÈÕÆÚµÄÌáÐѹ¦ÄÜ£¬Í¦ÓôÃÆµÄ£¬¶ÔÈÕÆÚµÄ¼ÆËã:
ºÜÐÒÔ˵ÄÊÇÔÚdelphi ÖÐÓÐÏÖÓеļÆË㺯Êý£¬DateUtilsµ¥Ôª£»
  ·¾¶:*\Delphi7\Source\Rtl\Common Ŀ¼Ï¡£
Ìù³öÒ»²¿·Ö:
function IncYear(const AValue: TDateTime;
  const ANumberOfYears: Integer = 1): TDateTime;
// function Inc ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ