We debugged this problem remotely and found out that the issue is related to the user profile folder residing on a volume that does not support 8dot3name. When Elliott starts up, it will attempt to access the temp folder residing on the local volume for certain operations. The temp folder is typically located in your user profile somewhere in your local drive like:
In this particular case, the user ID is "Joe Smith." So the local path is:
Many areas of Elliott will have difficulty accessing a path and file that includes a space. So instead of directly accessing this path that includes a space, Elliott use the 8dot3name version of the same path, which would be:
In this case, the user profile is not on the C: drive because it is an SSD drive without enough disk space available for a large user profile. So the user added a D: drive with larger volume and moved the profile to the D: drive. The reason it is a problem for the D: drive in this case is because Windows 8.1 turns off 8dot3name support on non-OS drives (i.e., D: and E: drives) by default. An OS drive like C: still has the 3dot3name support by default. See the following article that describes this behavior:
Because the D: drive does not have 8dot3name support in this case, Elliott can't get the short version of "d:\users\Joe Smith\...", and thus is stuck. The latest Elliott program has been changed to detect this condition and will warn users about the lack of 8dot3name support instead of locking up. To verify whether the problem is caused by lack of 8dot3name support on your local volume, you can bring up a command prompt and go to, say, D:\Users and type the following:
If you see the short file name beside "Joe Smith," then you have 8dot3name support on the volume. Otherwise, you will have problems starting up Elliott. See example below.
To resolve this problem, you have several solutions to choose from:
- When you Create Windows user, don't create a user id with a space. That is to say "Joe Smith" is no good. But "Joe.Smith" is OK even though it is a long file name. Keep in mind that Elliott file system support long file name provided that the long file name does not have space in there. If you should create a Windows user that has space in there, then we need 8dot3name support in the volume so Elliott file system does not need to deal with space; or
- Don't use a Windows 8 machine; or
- If you do use a Windows 8 machine, make sure the user profile is on the C: drive; or
- On a Windows 8 machine, before you allow a user with space in the name to log in to that machine, use the following command utility first:fsutil 8dot3name set 0This will enable 8dot3name file creation on all volumes. Keep in mind that if you choose to use solution 4, it may not immediately fix your problem. If the "d:\users\Joe Smith" folder was created when the 8dot3name was not supported on that volume, then the short name version is still absent even after you enable the 8dot3name support. Only the new folders created after the 8dot3name is enabled will have the corresponding short name version.