在这些功能上使用相关路径的正确方法是什么?尝试了一些,但只有绝对路径工作正常。这是一些代码示例,用于说明。谢谢!
Procedure test;
Var
f : TStringList;
trash: Cardinal;
TempTime,SumTime : Cardinal;
TimeInterno : TDateTime;
begin
f := TStringList.Create;
f.LoadFromfile('D:\test\Ignores.txt');
for Loop := 0 to f.Count-1 do
begin
Ignore(f.Strings[Loop].tointeger);
end;
f.Free;
FindType(-1,trash);
TimeInterno := Now;
f := TStringList.Create;
if not FileExists('D:\test\Ignores.txt') then
begin
f.SaveToFile('D:\test\Ignores.txt');
end;
Wait(100);
if FileExists('D:\test\Ignores.txt') then
begin
f.SaveToFile('D:\test\Ignores.txt');
Wait(100);
f.LoadFromfile('D:\test\Ignores.txt');
end;
f.add(IntToStr(findType(-1,Ground)));
f.SaveToFile('D:\test\Ignores.txt');
f.Free;
Ignore(trash);
Wait(200);
trash := FindType(-1,Ground);
UseObject(trash);
答案 0 :(得分:1)
相对路径应该可以正常工作,但要确保你所假设的相对路径是正常的。它应该与当前工作目录相关,该目录并不总是与.exe目录相同。
在大多数平台上,您可以通过添加exe目录的相对路径来解决此问题,例如
sExePath := ExtractFilePath(paramstr(0));
然后使用
appendtrailingpathdelimiter(sexepath)+yourrelativepathvarorexpression;