查找绝对路径!(50分)

  • 主题发起人 主题发起人 chehongll
  • 开始时间 开始时间
C

chehongll

Unregistered / Unconfirmed
GUEST, unregistred user!
知道其****.exe文件,如何调用函数返回它的绝对路径?
 
ExtractFileDir(****.exe);
 
试试这个:<br>procedure TForm1.BitBtn4Click(Sender: TObject);<br>begin<br>ShowMessage(Application.ExeName);<br>ShowMessage(ExtractFilePath(Application.ExeName));<br>end;<br><br>
 
哦~<br>我看错题目的意思了 &nbsp;<br>不好意思!
 
ExtractFilePath(application.ExeName)得到的是程序文件的路径。
 
HunterTeam,ExtractFileDir函数只是对所提供的完整路径名分解出其绝对路径若只单单输入<br>一个纯文件名,该函数返回的为空字符串!
 
各位大虾,我需要的是针对一个纯文件名利用一个方法能得到其在所有驱动器中的绝对路径
 
关注! &nbsp;<br><br>提前!
 
用查找<br>lid=731999,有答案,收藏的贴子。
 
这样好像不行,因为程序无法只根据文件名找到路径,程序调用文件的过程是<br>找到路径,然后执行文件名。不过可以这样:找遍所有的目录,判断是否有文件名<br>与你要的文件名相同?(用extractfilename())如同则显示路径及文件名
 
hbezwwl,我看过了的731999的贴子,大都比较繁琐。而且好像还是不能解决我的问题。<br>有没有更为简明的法子!!!
 
自己写一个Function不就得了。
 
如果仅仅提供一个***.exe的文件名,恐怕只能在磁盘里查找了。
 
如查是linux<br>你可以用where linux<br>:)
 
呵呵,不用查找,谁能给出路径????????<br>我认为只有用查找.
 
ExpandFileName(文件名) 可以把相对路径扩展为绝对路径
 
给你一个吧:<br>////////////////////////////////////////<br>//得到动态库:mFilePath所在的路径<br>////////////////////////////////////////<br>function PathOfDll(mFilePath : string): string;<br>var<br>&nbsp; Buffer: array[0..260] of Char;<br>&nbsp; mhandle : THandle;<br>begin<br>&nbsp; mhandle := GetModuleHandle('GBendDll.dll');<br>&nbsp; GetModuleFileName(mhandle, Buffer, SizeOf(Buffer));<br>&nbsp; Result := ExtractFilePath(Buffer);<br>end;<br>
 
为什么我用expandfilename(文件名),得到的路径却是c:/Documents and Settings/Administrator/文件名<br>而不是我程序所在的文件夹。
 
多人接受答案了。
 
后退
顶部