Delphi代码:
program setTime;
{$APPTYPE CONSOLE}
uses Windows;
procedure usage();
begin
writeln('-------------------------------------------------------'+#10#13+
'setTime Ver 1.0 hnxyy[F.S.T], 2005/6/22'+#10#13+
'http://www.wrsky.com, QQ:19026695 '+#10#13+
' 文件时间修改器 1.0'+#10#13#10#13+
'Usage: setTime OldFile NewFile'+#10#13+
'Example: setTime cmd.exe muma.exe'+#10#13+
'--------------------------------------------------------'
);
exit;
end;
procedure setTimer(srcFile,destFile:PChar);
var
hFileOld,hFileNew :THandle;
CreationTime, LastAccessTime, LastWriteTime :PFileTime;
begin
hFileOld :=createFile(srcFile,generic_read,file_share_read,nil,
open_existing,FILE_ATTRIBUTE_NORMAL,Cardinal(nil));
if (hFileOld=INVALID_HANDLE_VALUE) then
begin
Writeln('Cannot open '+srcFile+'.');
exit;
end;
hFileNew :=createFile(destFile,generic_write,file_share_write,nil,
open_existing,FILE_ATTRIBUTE_NORMAL,Cardinal(nil));
if (hFileNew=INVALID_HANDLE_VALUE) then
begin
Writeln('Cannot open '+destFile+'.');
exit;
end;
GetMem(CreationTime,SizeOf(TFileTime));
GetMem(LastAccessTime,SizeOf(TFileTime));
GetMem(LastWriteTime,SizeOf(TFileTime));
GetFileTime(hFileOld,CreationTime,LastAccessTime,LastWriteTime);
SetFileTime(hFileNew,CreationTime,LastAccessTime,LastWriteTime);
FreeMem(CreationTime);
FreeMem(LastAccesstime);
FreeMem(LastWriteTime);
CloseHandle(hFileNew);
CloseHandle(hFileOld);
writeln('All is done! Enjoy yourself.');
end;
begin
if (ParamCount<>2) then
usage()
else
setTimer(PChar(ParamStr(1)),PChar(ParamStr(2)));
end.
c代码:
program setTime;
{$APPTYPE CONSOLE}
uses Windows;
procedure usage();
begin
writeln('-------------------------------------------------------'+#10#13+
'setTime Ver 1.0 hnxyy[F.S.T], 2005/6/22'+#10#13+
'http://www.wrsky.com, QQ:19026695 '+#10#13+
' 文件时间修改器 1.0'+#10#13#10#13+
'Usage: setTime OldFile NewFile'+#10#13+
'Example: setTime cmd.exe muma.exe'+#10#13+
'--------------------------------------------------------'
);
exit;
end;
procedure setTimer(srcFile,destFile:PChar);
var
hFileOld,hFileNew :THandle;
CreationTime, LastAccessTime, LastWriteTime :PFileTime;
begin
hFileOld :=createFile(srcFile,generic_read,file_share_read,nil,
open_existing,FILE_ATTRIBUTE_NORMAL,Cardinal(nil));
if (hFileOld=INVALID_HANDLE_VALUE) then
begin
Writeln('Cannot open '+srcFile+'.');
exit;
end;
hFileNew :=createFile(destFile,generic_write,file_share_write,nil,
open_existing,FILE_ATTRIBUTE_NORMAL,Cardinal(nil));
if (hFileNew=INVALID_HANDLE_VALUE) then
begin
Writeln('Cannot open '+destFile+'.');
exit;
end;
GetMem(CreationTime,SizeOf(TFileTime));
GetMem(LastAccessTime,SizeOf(TFileTime));
GetMem(LastWriteTime,SizeOf(TFileTime));
GetFileTime(hFileOld,CreationTime,LastAccessTime,LastWriteTime);
SetFileTime(hFileNew,CreationTime,LastAccessTime,LastWriteTime);
FreeMem(CreationTime);
FreeMem(LastAccesstime);
FreeMem(LastWriteTime);
CloseHandle(hFileNew);
CloseHandle(hFileOld);
writeln('All is done! Enjoy yourself.');
end;
begin
if (ParamCount<>2) then
usage()
else
setTimer(PChar(ParamStr(1)),PChar(ParamStr(2)));
end.
c代码: