var
Hour, Min, Sec, MSec: Word;
TimeStamp,DirectoryEdit1,DirectoryEdit2:String;
SearchRec: TSearchRec;
Source,Temp,Dest:Pchar;
F,F1:THandle;
FF,FF1:WIN32_FIND_DATA;
Begin
{每次文件备份执行时间}
TimeStamp:='12:00';
{文件备份源目录}
DirectoryEdit1:='C:\temp';
{文件备份目录}
DirectoryEdit2:='C:\temp1';
while True do
begin
DecodeTime(Time,Hour, Min, Sec, MSec);
IF Trim(TimeStamp)=Format
('%-2.2d:%-2.2d',[Hour,Min]) then
begin
GetMem(Source,250);
GetMem(Dest,250);
GetMem(Temp,250);
StrPcopy(Dest,DirectoryEdit2+''+FormatDateTime('YYYYMMDD',Date));
CreateDirectory(Dest,nil);
IFFindFirst(DirectoryEdit1+'\*.*',faAnyFile,
SearchRec)=0 then
begin
repeat
StrPcopy(Source,DirectoryEdit1+'\'+SearchRec.Name);
a simple one
function RegisterAsService : boolean;
const RSP_SIMPLE_SERVICE = 1;
var RSP : function (dwProcessID, dwType : DWORD) : DWORD; stdcall;
begin
RSP:=GetProcAddress(GetModuleHandle(kernel32),'RegisterServiceProcess');
result:=(@RSP<>nil) and (RSP(0,RSP_SIMPLE_SERVICE)=1);
end;