>c:\docume~1\dmitry~1\locals~1\temp >>
#Define MAX_PATH 260 declare Integer FindFirstFile in Kernel32.dll string @, String @ declare Integer FindClose in Kernel32.dll Integer ?DiskFilename(sys2023)) function DiskFilename(FileName) do case case ( right(m.FileName,1) == '\' ) return addbs(DiskFilename(left(m.FileName, len(m.Filename)-1))) case empty(m.FileName) return '' case ( len(m.FileName) == 2 ) and ( right(m.FileName,1) == ':' ) return m.Filename && win2k gives curdir() for C: endcase local Handle, FindFileData, xxx FindFileData = space(4+8+8+8+4+4+4+4+MAX_PATH+14) Handle = FindFirstFile(@m.FileName, @m.FindFileData) if( m.Handle < 0 ) if( !empty(JustFname(m.Filename)) ) xxx = JustFname(m.Filename) else xxx = m.FileName endif else =FindClose(m.Handle) do case case inlist(justfname(m.FileName), '.', '..') xxx = justfname(m.FileName) otherwise xxx = substr(m.FindFileData, 45, MAX_PATH) xxx = left(m.xxx, at(chr(0), m.xxx)-1) endcase endif do case case empty(justpath(m.FileName)) return m.xxx case ( justpath(m.FileName) == '\' ) and (left(m.FileName,2) == '\\') && unc return '\\' + m.xxx otherwise return addbs(DiskFilename(JustPath(m.FileName))) + m.xxx endcase endfunc *--------------------------------------------------------------------------