otya128 / winevdm

16-bit Windows (Windows 1.x, 2.x, 3.0, 3.1, etc.) on 64-bit Windows
GNU General Public License v2.0
2.52k stars 145 forks source link

Could not get 8.3 filename #991

Open SabinStargem opened 3 years ago

SabinStargem commented 3 years ago

I have been using Build 2098, for Stars! and Castle of the Winds. This prevents Stars! from properly using race and save files, but COTW works well enough. WineDVM 0.7 doesn't have this error in the command prompt. Here is how I usually launch my games:

D:\Videogames\Freeware\Stars v2.7j WineDVM 2021>rem Change to the directory this script is in

D:\Videogames\Freeware\Stars v2.7j WineDVM 2021>cd "D:\Videogames\Freeware\Stars v2.7j WineDVM 2021"

D:\Videogames\Freeware\Stars v2.7j WineDVM 2021>set launcher=.\otvdm\otvdm.exe

D:\Videogames\Freeware\Stars v2.7j WineDVM 2021>set exe=.\stars\stars.exe

D:\Videogames\Freeware\Stars v2.7j WineDVM 2021>rem Run the system!

D:\Videogames\Freeware\Stars v2.7j WineDVM 2021>start /b .\otvdm\otvdm.exe .\stars\stars.exe version: 2098 4b4c:err:task:cwd_warning 619: could not get 8.3 filename. D:\Videogames\Freeware\Stars v2.7j WineDVM 2021

When I move Stars! to my desktop, the error line doesn't appear, and I can load my saved data.

C:\Users\Janus\Desktop\Stars v2.7j WineDVM 2021>rem Change to the directory this script is in

C:\Users\Janus\Desktop\Stars v2.7j WineDVM 2021>cd "C:\Users\Janus\Desktop\Stars v2.7j WineDVM 2021"

C:\Users\Janus\Desktop\Stars v2.7j WineDVM 2021>set launcher=.\otvdm\otvdm.exe

C:\Users\Janus\Desktop\Stars v2.7j WineDVM 2021>set exe=.\stars\stars.exe

C:\Users\Janus\Desktop\Stars v2.7j WineDVM 2021>rem Run the system!

C:\Users\Janus\Desktop\Stars v2.7j WineDVM 2021>start /b .\otvdm\otvdm.exe .\stars\stars.exe version: 2098

malxau commented 3 years ago

By default, modern versions of Windows create 8.3 file names on C: but do not create them on newly formatted non-system volumes.

To check whether 8.3 name creation is enabled on D:, open a command prompt as Administrator and run:

fsutil 8dot3name query d:

The final line should indicate whether this support is enabled or not.

To enable, use

fsutil 8dot3name set d: 0

Note this means that all newly created files on D: have 8.3 names, but any existing files will not. Fixing this for an existing set of files will require copying the files to a new directory in order to ensure 8.3 names are created. Note this needs to happen for each intermediate directory too (ie., a new directory under D:\ needs to be created because D:\Videogames will not have an 8.3 name.)

SabinStargem commented 3 years ago

Didn't know that stuff. This is good stuff for amateurs like me to know. Thank you. :)

malxau commented 3 years ago

Ehh, very few people would know something like this; I haven't been active in this project much but was part of the team that made these changes.

One more thing: to see what files have 8.3 names, use dir /x . This will be useful if you're trying to add back 8.3 names to a large set of files.