Procedure DosPathToFullPath lParameters pcFullPath as String Local lcDrive as String Local lcRetval as String Local lnSlashCount as Integer Local lnCount as Integer Local aPath[1] lcRetVal = '' ** ** Get the Drive Letter first. ** lcDrive = Left(pcFullPath,At(':',pcFullPath)) ** ** Loop thru all the slashes and build the return string ** lcRetVal = lcDrive lnSlashCount = Occurs('\',pcFullPath) For lnCount = 2 to lnSlashCount =ADir(aPath,Left(pcFullPath,At('\',pcFullPath,lnCount)-1),"D") lcRetVal = lcRetVal + '\' + aPath[1] EndFor Return lcRetVal+'\' Procedure FullPathToDosPath lParameters pcDosPath as String Local lcDrive as String Local lcRetval as String Local lnSlashCount as Integer Local lnCount as Integer Local aPath[1] lcRetVal = '' ** ** Get the Drive Letter first. ** lcDrive = Left(pcDosPath,At(':',pcDosPath)) ** ** Loop thru all the slashes and build the return string ** lcRetVal = lcDrive lnSlashCount = Occurs('\',pcDosPath) For lnCount = 2 to lnSlashCount =ADir(aPath,Left(pcDosPath,At('\',pcDosPath,lnCount)-1),"D",2) lcRetVal = lcRetVal + '\' + aPath[1] EndFor Return lcRetVal+'\'