如何从系统路径变量的路径获取绝对路径?

时间:2010-05-14 09:21:02

标签: delphi path absolute-path

有没有一种简单的方法可以将带有系统路径变量的路径转换为绝对路径?

因此%ProgramFiles%\Internet Explorer\hmmapi.dll变为C:\Program Files\Internet Explorer\hmmapi.dll

我想知道是否有可以执行此操作的API调用,或者我是否必须这么做并检测%..%序列并将其替换为相应的环境变量?

1 个答案:

答案 0 :(得分:16)

您可以使用WinAPI函数ExpandEnvironmentStrings

function ExpandEnvStr(const szInput: string): string;
  const
    MAXSIZE = 32768;
  begin
    SetLength(Result,MAXSIZE);
    SetLength(Result,ExpandEnvironmentStrings(pchar(szInput),
      @Result[1],length(Result)) - 1);
  end;