const
IniFileName = '.\ConfigFile\ThirdConifg.ini';
JingDaDllName = '.\DllFile\bfnet.dll';
LogFileDir = '.\WaterControlLog';
LogFileName = 'WCLog'; //日志文件名 WCLog+yyyymmdd.log格式 procedure TJingDaSellWater.WriteLog(const cLog: string);
var
FLogFileName: string;
LogFile: TextFile;
begin
if not DirectoryExists(LogFileDir) then //检查日志文件所在的路径是否存在
CreateDir(LogFileDir);
else begin
FLogFileName:= LogFileDir +'\' + LogFileName + FormatDateTime('yyyymmdd',Date) + '.log';
if not FileExists(FLogFileName) then //日志文件不存在则创建
begin
FileCreate(FLogFileName);
end
else begin
AssignFile(LogFile, FLogFileName);
Append(LogFile);
Writeln(LogFile, cLog);
CloseFile(LogFile);
end;
end;
end;上面的代码 当第一次创建文件的时候出现运行时候的错误 I/O Error 32 ,请问这是什么原因呀?
IniFileName = '.\ConfigFile\ThirdConifg.ini';
JingDaDllName = '.\DllFile\bfnet.dll';
LogFileDir = '.\WaterControlLog';
LogFileName = 'WCLog'; //日志文件名 WCLog+yyyymmdd.log格式 procedure TJingDaSellWater.WriteLog(const cLog: string);
var
FLogFileName: string;
LogFile: TextFile;
begin
if not DirectoryExists(LogFileDir) then //检查日志文件所在的路径是否存在
CreateDir(LogFileDir);
else begin
FLogFileName:= LogFileDir +'\' + LogFileName + FormatDateTime('yyyymmdd',Date) + '.log';
if not FileExists(FLogFileName) then //日志文件不存在则创建
begin
FileCreate(FLogFileName);
end
else begin
AssignFile(LogFile, FLogFileName);
Append(LogFile);
Writeln(LogFile, cLog);
CloseFile(LogFile);
end;
end;
end;上面的代码 当第一次创建文件的时候出现运行时候的错误 I/O Error 32 ,请问这是什么原因呀?
var hd:thandle;
...
if not FileExists(FLogFileName) then //日志文件不存在则创建
begin
hd:= FileCreate(FLogFileName);
FileClose(hd); //这样才行
end;
//另外,你建完后可直接写入
AssignFile(LogFile, FLogFileName);
Append(LogFile);
Writeln(LogFile, cLog);
CloseFile(LogFile);
var
sDirectory, sFileName: String;
nFile: TextFile;
begin
//目录检查
sDirectory := ChangeFileExt(Application.ExeName, '');
if not DirectoryExists(sDirectory) then
CreateDir(sDirectory);
//记录文本记录
sFileName := ChangeFileExt(Application.ExeName, '\Log' + FormatDateTime('YYYYMMDD', Date) + '.txt');
AssignFile(nFile, sFileName);
if FileExists(sFileName) then
Append(nFile)
else
Rewrite(nFile);
Writeln(nFile, ALogCont);
CloseFile(nFile); //界面显示
mmoLog.Lines.Add(ALogCont);
end;
JingDaDllName = AppPath+'DllFile\bfnet.dll';
LogFileDir = AppPath+'WaterControlLog';
LogFileName = AppPath+'WCLog'; //日志文件名 WCLog+yyyymmdd.log格式