delphi 获取可执行文件的当前路径

在Delphi SysUtils 单元中有 ExtractFileDir 与 ExtractFilePath两个类似的函数, 两个函数有以下的区别:

ExtractFilePath 传回值的最後一个字元是反斜杠“/”。

ShowMessage(ExtractFileDir(Application.Exename)); // 返回值为 c:/temp

ShowMessage(ExtractFilePath(Application.Exename)); // 返回值为 c:/temp/

相同点: 如果执行文件在根目录下(如:C:/SAMPLE.EXE)的话, 两者的传回值相同, 且最后一个字符都是“/”。

===============================================================================

edit1.Text:=ParamStr(0);//自己全路径c:/555/qq.exe,可用于控制台

edit1.text:=ExpandFileName(ParamStr(0)); //获取本程序的完整路径 c:/qq/2.exe

edit2.text:=ExtractFileDir(ParamStr(0)); //获取本程序的路径 c:/qq

edit3.text:=application.Exename; //获取本程序的完整路径 c:/qq/2.exe,和第1个一样

edit4.text:=ExtractFilename(Application.Exename); //获得文件名2.exe

ExpandFileName() 返回文件的全路径(含驱动器、路径)

ExtractFileExt() 从文件名中抽取扩展名

ExtractFileName() 从文件名中抽取不含路径的文件名

ExtractFilePath() 从文件名中抽取路径名

ExtractFileDir() 从文件名中抽取目录名

ExtractFileDrive() 从文件名中抽取驱动器名

ChangeFileExt() 改变文件的扩展名

ExpandUNCFileName() 返回含有网络驱动器的文件全路径

ExtractRelativePath() 从文件名中抽取相对路径信息

ExtractShortPathName() 把文件名转化为DOS的8·3格式

MatchesMask() 检查文件是否与指定的文件名格式匹配