如果根据文件名参数,得到它所在的路径(50分)

  • 主题发起人 主题发起人 pdpcwh
  • 开始时间 开始时间
P

pdpcwh

Unregistered / Unconfirmed
GUEST, unregistred user!
类似于Windows下的查找工具,我现在需要在程序里边实现。
我输入文件名参数,需要返回此文件所在地绝对路径,如果存在多个同名文件,最好能返回
多个结果。
那位大侠帮帮我啊,我自己写了一个,但是很多都找不到。谢谢!
 
如果不嫌烦,可以自已用递归扫描目录来实现查找
 
我现在需要的比较急,谁手头有现成的源码,是否可以借鉴一下
谢谢 xf_wangyi的意见,我以前用的也是递归,但是总是有些东西找不到
 
哪位大侠有办法,救救我,好急啊!
 
各位高手大哥,伸出你们的援助之手吧,小弟感激不尽!
 
用Win32 API:GetFullPathName

Function GetFullPathName Lib "kernel32" Alias "GetFullPathNameA" (ByVal lpFileName As String, ByVal nBufferLength As Long, ByVal lpBuffer As String, ByVal lpFilePart As String) As Long

【说明】
获取指定文件的完整路径名

【返回值】
Long,装载到lpBuffer中的字符数量(排除空中止字符)。如缓冲区的长度不足以容下完整的路径,则返回值就是要求的缓冲区大小。零表示失败。会设置GetLastError

【参数】
lpFileName ----- String,指定文件名(长文件名或8.3格式的DOS文件名)

nBufferLength -- Long,lpBuffer字串的长度

lpBuffer ------- String,指定一个预先定义好的字串,用于装载目标文件的驱动器及路径名称。如存在长文件名,那么这个参数保存的就肯定是长文件名

lpFilePart ----- Long,指定一个长整数变量,用于装载文件名起始的地方。参考注解
 
接受答案了.
 
我有一个ScanFile控件有demo功能很好,需要留下Email。
 
linsb,您好,谢谢,可以发给我试试吗?
我得邮箱pengdingping@fenet.com.cn
完万分感谢!
 
已发,查收。
你用了GetFullPathName函数吗?如能满足你的要求,请贴出代码,或寄给我。
 
linsb,您好,打开文件时报错,c;lass TFilescaner not found
 
先要安装vcl!
 
对不起,我是个新手,你给的不是dpk文件,我怎么安装呢?直接引用不行吗?
linsb,敬请指教,谢谢!
 
Component->Install Component->Browse->FILESSCN.PAS
 
后退
顶部