Skip to content

ExpandFileName

Expand a relative filename to an absolute filename.

Declaration

Source position: finah.inc line 29

  function ExpandFileName(const FileName: UNICODESTRING) : UNICODESTRING;
  function ExpandFileName(const FileName: UNICODESTRING; 
                         const BasePath: UNICODESTRING) : UNICODESTRING;
  function ExpandFileName(const FileName: RAWBYTESTRING) : RAWBYTESTRING;
  function ExpandFileName(const FileName: RAWBYTESTRING; 
                         const BasePath: RAWBYTESTRING) : RAWBYTESTRING;

Description

ExpandFileName expands the filename to an absolute filename. It changes all directory separator characters to the one appropriate for the system first.

If an empty filename is passed, it is expanded to the current directory.

If BasePath is not passed, the current directory is used as base path.

Errors

None.

See also

Name Description
ExpandFileNameCase Expand a filename entered as case insensitive to the full path as stored on the disk.
ExtractFileDir Extract the drive and directory part of a filename.
ExtractFileDrive Extract the drive part from a filename.
ExtractFileExt Return the extension from a filename.
ExtractFileName Extract the filename part from a full path filename.
ExtractFilePath Extract the path from a filename.
ExtractRelativePath Extract a relative path from a filename, given a base directory.

Example

Program Example33;
{ This program demonstrates the ExpandFileName function }
Uses sysutils;
Procedure Testit (F : String);
begin
  Writeln (F,' expands to : ',ExpandFileName(F));
end;
Begin
  Testit('ex33.pp');
  Testit(ParamStr(0));
  Testit('/pp/bin/win32/ppc386');
  Testit('\pp\bin\win32\ppc386');
  Testit('.');
End.