Delphi±àдϵͳ·þÎñ¶þ£ºÏµÍ³·þÎñºÍ×ÀÃæ³ÌÐòµÄÇø±ð
Delphi±àдϵͳ·þÎñ¶þ£ºÏµÍ³·þÎñºÍ×ÀÃæ³ÌÐòµÄÇø±ð ÊÕ²Ø
Windows 2000/XP/2003µÈÖ§³ÖÒ»ÖÖ½Ð×ö“ϵͳ·þÎñ³ÌÐò”µÄ½ø³Ì£¬ÏµÍ³·þÎñºÍ×ÀÃæ³ÌÐòµÄÇø±ðÊÇ£º
ϵͳ·þÎñ²»Óõǽϵͳ¼´¿ÉÔËÐУ»
ϵͳ·þÎñÊÇÔËÐÐÔÚSystem Idle Process/System/smss/winlogon/servicesÏµģ¬¶ø×ÀÃæ³ÌÐòÊÇÔËÐÐÔÚExplorerϵģ»
ϵͳ·þÎñÓµÓиü¸ßµÄȨÏÞ£¬ÏµÍ³·þÎñÓµÓÐSytemµÄȨÏÞ£¬¶ø×ÀÃæ³ÌÐòÖ»ÓÐAdministratorȨÏÞ£»
ÔÚDelphiÖÐϵͳ·þÎñÊǶÔ×ÀÃæ³ÌÐò½øÐÐÁËÔÙÒ»´ÎµÄ·â×°£¬¼Èϵͳ·þÎñ¼Ì³ÐÓÚ×ÀÃæ³ÌÐò¡£Òò¶øÓµÓÐ×ÀÃæ³ÌÐòËùÓµÓеÄÌØÐÔ£»
ϵͳ·þÎñ¶Ô×ÀÃæ³ÌÐòµÄDoHandleException×öÁ˸Ľø£¬»á×Ô¶¯°ÑÒì³£ÐÅϢдµ½NT·þÎñÈÕÖ¾ÖУ»
ÆÕͨӦÓóÌÐòÆô¶¯Ö»ÓÐÒ»¸öỊ̈߳¬¶ø·þÎñÆô¶¯ÖÁÉÙº¬ÓÐÈý¸öÏ̡߳££¨·þÎñº¬ÓÐÈý¸öỊ̈߳ºTServiceStartThread·þÎñÆô¶¯Ị̈߳»TServiceThread·þÎñÔËÐÐỊ̈߳»ApplicationÖ÷Ị̈߳¬¸ºÔðÏûϢѻ·£©£»
ժ¼´úÂ룺
procedure TServiceApplication.Run;
begin
.
.
.
StartThread := TServiceStartThread.Create(ServiceStartTable);
try
while not Forms.Application.Terminated do
Forms.Application.HandleMessage;
Forms.Application.Terminate;
if StartThread.ReturnValue <> 0 then
FEventLogger.LogMessage(SysErrorMessage(StartThread.ReturnValue));
finally
StartThread.Free;
end;
.
.
.
end;
procedure TService.DoStart;
begin
try
Status := csStartPending;
try
FServiceThread := TServiceThread.Create(Self);
 
Ïà¹ØÎĵµ£º
×î½üÐèÒª°²×°µÚÈý·½×é¼þ£¬ÔÚÍøÂçÉÏÕÒµ½Ò»Ð©×ÊÁÏת¹ýÀ´¿´¿´
ÓÉÓÚ×é¼þÌṩµÄ·½Ê½²»Í¬£¬ËùÒÔ°²×°µÄ·½·¨Ò²ÊDz»Ò»ÑùµÄ£¬ÏÂÃæ¾ÍĿǰ³£¼ûµÄ¸÷ÖÖÐÎʽµÄ×é¼þµÄ°²×°·½·¨½éÉÜһϡ£
1 Ö»ÓÐÒ»¸öDCUÎļþµÄ×é¼þ¡£DCUÎļþÊDZàÒëºÃµÄµ¥ÔªÎļþ£¬ÕâÑùµÄ×é¼þÊÇ×÷Õß²»Ïë°ÑÔ´Â빫² ......
C#µÄToolTip£¨delphi½ÐHint£©»úÖÆ·Ç³£¹Ö£¬²»ÊÇÏñdelphiµÄÔª¼þÒ»Ñù£¬Ã¿¸öTControlÓÐÒ»¸öHintÊôÐÔ£¬C#ÓÐÒ»¸öToolTipÔª¼þ£¬µ±°ÑÕâ¸öÔª¼þ´Ó¹¤¾ßÏäÀµ½formÉϺó£¬Ñ¡ÖÐformÉϵÄÈκÎcontrolÔª¼þ£¬ÔÚÊôÐÔ´°Ì壨Object Inspector£©ÉϾͻá¶à³öÒ»¸öÊôÐÔ“toolTip1ÉϵÄToolTip”£¬Èç¹û¶àÀ¼¸¸ ......
Ò»¡¢ÀàÓë¶ÔÏó
1¡¢ Àà(Class)ÊÇÓû§¶¨ÒåµÄÊý¾ÝÀàÐÍ
2¡¢ ¶ÔÏó£¨Object£©ÊÇÀà(Class)µÄÒ»¸öʵÀý£¬»òÓÉÀඨÒåÊý¾ÝÀàÐ͵ÄÒ»¸ö±äÁ¿;
3¡¢ ÀàÓÐÒ»ÖÖ״̬£¨ÄÚ²¿Êý¾Ý£©£¬²Ù×÷£¨ÐÐΪ»ò·½·¨£©£¬ÊôÐÔ;
4¡¢ ¶ÔÏóÊÇÒ»¸öʵÌ壬³ÌÐòÔËÐÐʱ»áΪÆäÄÚ²¿±íÏÖ·ÖÅäһЩÄÚ´æ;
5¡¢ ÀàÓë¶ÔÏóÖ®¼äµÄ¹ØÏµºÍ±äÁ¿ÓëÀàÐ ......
TCPÁ¬½Ó½¨Á¢Óë¹Ø±Õ
ÏàП÷λ¶ÁÕßÏÖÔÚ¶Ôì¶ Winsock µÄ¶¨Ò塢ϵͳ»·¾³£¬ÒÔ¼°Ò»Ð© Winsock Stack¼° Winsock Ó¦ÓóÌʽ£¬¶¼Óлù±¾µÄÈÏʶÁË¡£½ÓÏÂÀ´±ÊÕßÏ£ÍûÄÜ·Ö¼¸ÆÚΪ¸÷λ¶ÁÕß½éÉÜһϼòµ¥µÄ Winsock ÍøÂ·Ó¦ÓóÌʽÉè¼Æ¡£ÎÒÃǽ«ÒÔ Winsock 1.1 ¹æ¸ñËù¶¨ÒåµÄ 46 ¸öÓ¦ÓóÌʽ½éÃæ£¨API£©Îª»ù´¡£¬Öð²½À´½¨Á¢Ò»¶Ô TCP socket Ö÷´Ó¼Ü ......
Delphi±àдϵͳ·þÎñÁù£ºÔÚ·þÎñÖÐʹÓÃCOM×é¼þ ÊÕ²Ø
ÔÚ·þÎñÖе÷ÓÃCOM×é¼þ²»ÄÜÏñÔÚ×ÀÃæ³ÌÐòÖÐÖ±½Ó´´½¨£¬ÔÚÿ´Î´´½¨Ö®Ç°Ïȵ÷ÓÃCoInitialize(nil)£¬ÊͷŵÄʱºòµ÷ÓÃCoUninitialize¡£ÀýÈ磺µ÷ÓÃADO×é¼þ
var
Qry: TADOQuery;
begin
CoInitialize(nil);
Qry := TADOQuery.Create(nil);
tr ......