Mail Archives: djgpp/1996/10/21/07:45:09
On Mon, 21 Oct 1996, Howard Kaikow wrote:
> Yes, that proves that DJGPP does not really have LFN support. If it did, it
> would be looking at the long file name when LFN=y, not the short DOS name. I
> consider that to be a bug in the DJGPP LFN support.
But DJGPP does NOT look at the short DOS name at all! When the linker
creates a program `psbook.exe', the DJGPP library calls OpenFile function
of the LFN API with the long filename `psbook.exe'. However, in this case
the long filename `psbook.exe' is identical to the short 8+3 alias of the
file `psbook.exe0'. So Windows 95 (*not* DJGPP!) opens the existing file
`psbook.exe0' instead of creating a new file called `psbook.exe'. DJGPP
has no means to change the way Windows services file-oriented calls.
The reason for the above is that when `psbook.exe' was renamed to
`psbook.exe0', Windows failed to change its 8+3 short alias. Since
Windows doesn't allow for 2 files to have the same 8+3 short name, the
file was effectively not renamed!
- Raw text -