Function ProperCase Lparameters lcItem Local lcReturn lcReturn = This.CorrectCase(lcItem) lcItem = JustPath(lcItem) DO while !Empty(lcItem) lcReturn = Addbs(This.CorrectCase(lcItem)) + lcReturn If lcItem == JustPath(lcItem) lcItem = "" Else lcItem = JustPath(lcItem) EndIf EndDo Return lcReturn Function CorrectCase Lparameters lcItem Local laInfo[1], lnFound, lcReturn lnFound = ADir(laInfo, lcItem, "D", 1) DO case Case lnFound = 0 *-- This is the Drive letter ie D:\ lcReturn = lcItem Case lnFound = 1 *-- This is a file name or a portion of the path. lcReturn = laInfo[1,1] Case lnFound = 2 and laInfo[1,1]="." *-- This is a directory name. lcReturn = "" Otherwise lcReturn = laInfo[1,1] EndCase Return lcReturnHTH