Delphi±àдϵͳ·þÎñÈý£º±àдÁ½ÆÜϵͳ·þÎñ
Delphi±àдϵͳ·þÎñÈý£º±àдÁ½ÆÜϵͳ·þÎñ ÊÕ²Ø
²ÉÓÃÏÂÃæµÄ·½·¨£¬¿ÉÒÔʵÏÖÒ»¸öÁ½ÆÜϵͳ·þÎñ£¨¼Èϵͳ·þÎñºÍ×ÀÃæ³ÌÐòµÄÁ½ÖÖģʽ£©
¹¤³Ì´úÂ룺
program FleetReportSvr;
uses
SvcMgr,
Forms,
SysUtils,
Windows,
SvrMain in 'SvrMain.pas' {FleetReportService: TService},
AppMain in 'AppMain.pas' {FmFleetReport}£»
{$R *.RES}
const
CSMutexName = 'Global\Services_Application_Mutex';
var
OneInstanceMutex: THandle;
SecMem: SECURITY_ATTRIBUTES;
aSD: SECURITY_DESCRIPTOR;
begin
InitializeSecurityDescriptor(@aSD, SECURITY_DESCRIPTOR_REVISION);
SetSecurityDescriptorDacl(@aSD, True, nil, False);
SecMem.nLength := SizeOf(SECURITY_ATTRIBUTES);
SecMem.lpSecurityDescriptor := @aSD;
SecMem.bInheritHandle := False;
OneInstanceMutex := CreateMutex(@SecMem, False, CSMutexName);
if (GetLastError = ERROR_ALREADY_EXISTS)then
begin
DlgError('Error, Program or service already running!');
Exit;
end;
if FindCmdLineSwitch('svc', True) or
FindCmdLineSwitch('install', True) or
FindCmdLineSwitch('uninstall', True) then
begin
SvcMgr.Application.Initialize;
SvcMgr.Application.CreateForm(TSvSvrMain, SvSvrMain);
SvcMgr.Application.Run;
end
else
begin
Forms.Application.Initialize;
Forms.Application.CreateForm(TFmFmMain, FmMain);
Forms.Application.Run;
end;
end.
È»ºóÔÚSvrMain×¢²á·þÎñ£º
unit SvrMain;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, SvcMgr, Dialogs, MsgCenter;
type
TSvSvrMain = class(TService)
procedure ServiceStart(Sender: TService; var Started: Boolean);
procedure ServiceStop(Sender: TService; var Stopped: Boolean)
Ïà¹ØÎĵµ£º
1.SHIFT+Êó±ê×ó¼ü ÏÈÑ¡ÖÐÈÎÒ»¿Ø¼þ,°´¼üºó¿ÉÑ¡Öд°Ìå(Ñ¡Öпؼþºó°´EscЧ¹ûÒ»Ñù)
2.Shift+F8 µ÷ÊÔʱµ¯³öCPU´°¿Ú¡£
3.Shift+F10 µÈÓÚÊó±êÓÒ¼ü£¨Windows¿ì½Ý¼ü£©¡£
&n ......
TCPÁ¬½Ó½¨Á¢Óë¹Ø±Õ
ÏàП÷λ¶ÁÕßÏÖÔÚ¶Ôì¶ Winsock µÄ¶¨Ò塢ϵͳ»·¾³£¬ÒÔ¼°Ò»Ð© Winsock Stack¼° Winsock Ó¦ÓóÌʽ£¬¶¼Óлù±¾µÄÈÏʶÁË¡£½ÓÏÂÀ´±ÊÕßÏ£ÍûÄÜ·Ö¼¸ÆÚΪ¸÷λ¶ÁÕß½éÉÜһϼòµ¥µÄ Winsock ÍøÂ·Ó¦ÓóÌʽÉè¼Æ¡£ÎÒÃǽ«ÒÔ Winsock 1.1 ¹æ¸ñËù¶¨ÒåµÄ 46 ¸öÓ¦ÓóÌʽ½éÃæ£¨API£©Îª»ù´¡£¬Öð²½À´½¨Á¢Ò»¶Ô TCP socket Ö÷´Ó¼Ü ......
Delphi Êý¾ÝÀàÐÍÁбí
·ÖÀà
·¶Î§
×Ö½Ú
±¸×¢
¼òµ¥ÀàÐÍ
ÐòÊý
ÕûÊý
Integer
-2147483648 .. 2147483647
4
ÓзûºÅ32λ
Cardinal
0 .. 4294967295
4
ÎÞ·ûºÅ32λ
Shortint
-128 .. 127
1
ÓзûºÅ8λ
Smallint
-32768 .. 32767
2
ÓзûºÅ16λ
Longint
-2147483648 .. 2147483647
4
ÓзûºÅ32λ
Int64
- ......
Delphi±àдϵͳ·þÎñÆß£ºÍê³É¶Ë¿ÚÑÝʾ ÊÕ²Ø
ÔÚ¿ª·¢´óÁ¿Socket²¢·¢·þÎñÆ÷£¬Íê³É¶Ë¿Ú¼ÓÖØµþI/OÊÇÆù½ñΪֹ×îºÃµÄÒ»ÖÖ½â¾ö·½°¸£¬ÏÂÃæÊǼòµ¥µÄ½éÉÜ£º
“Íê³É¶Ë¿Ú”Ä£ÐÍÊÇÆù½ñΪֹ×îΪ¸´ÔÓµÄÒ»ÖÖI/OÄ£ÐÍ£¬ÌرðÊʺÏÐèҪͬʱ¹ÜÀíΪÊýÖÚ¶àµÄÌ×½Ó×Ö£¬²ÉÓÃÕâÖÖÄ£ÐÍ£¬ÍùÍù¿ÉÒÔ´ïµ½×î¼ÑµÄϵͳÐÔÄÜ¡£µ«ÊÇÖ ......