这样写问题在哪?
procedure Tt_databake.Button1Click(Sender: TObject);
var
mytime: TDateTime;
ErrorMessage: Pointer;
ErrorCode: DWORD;
ErrorMessageString:string;
path:LPCSTR;
begin
mytime:=Now;
path:=LPCSTR(Edit1.Text+DateToStr(mytime)+ ' '+TimeToStr(mytime)+ '.dat ');
if not CopyFile( 'mphygl.mdb ',path,False) then
begin
ErrorCode := GetLastError;
FormatMessage(FORMAT_MESSAGE_ALLOCATE_BUFFER or FORMAT_MESSAGE_FROM_SYSTEM,
nil, ErrorCode, 0, @ErrorMessage, 0, nil);
ErrorMessageString:= '文件备份错误: '+PChar(ErrorMessage);
MessageBox(handle,PChar(ErrorMessageString), '警告 ',MB_ok or MB_ICONERROR);
LocalFree(hlocal(ErrorMessage));
end
else MessageBox(handle, '文件备份成功 ', '信息 ',MB_ok or MB_ICONINFORMATION);
end;
运行报错,说参数错误,似乎是这里出错了:
if not CopyFile( 'mphygl.mdb ',path,False) then
貌似是类型没有转化过来?改怎么写?
[解决办法]
CopyFile( 'mphygl.mdb ',Pchar(path),False)
[解决办法]
path:PChar;
begin
mytime:=Now;
path:=Edit1.Text+DateToStr(mytime)+ ' '+TimeToStr(mytime)+ '.dat ';
if not CopyFile( 'mphygl.mdb ',path,False) then
//文件名不能含有 ': ',TimeToStr(mytime)这里改下