$shortfn and $findfile().shortfn have always worked fine for me on NTFS. You should check if you have disabled short file name creation on your NTFS partition (certain tweaking utilities can do that). To do that, open the Registry Editor ( /run regedit ), go to HKLM\System\CurrentControlSet\Control\FileSystem key and check if there is a DWORD entry named NtfsDisable8dot3NameCreation with a value of 1. If there is, change it to 0 and reboot your system. Be aware that messing with the registry or system settings can cause problems, so make sure that you don't make mistakes doing the above and that you don't touch other things that you may find in there.