This is the mail archive of the
cygwin-apps@cygwin.com
mailing list for the Cygwin project.
RE: /WINDOWS
- From: Jörg Schaible <Joerg dot Schaible at Elsag-Solutions dot com>
- To: <cygwin-apps at cygwin dot com>
- Date: Mon, 8 Dec 2003 17:22:46 +0100
- Subject: RE: /WINDOWS
Corinna Vinschen wrote on Monday, December 08, 2003 4:42 PM:
>> Just one side note: Are you sure, that the orthography of all these
>> subdirectories is the same for all Windows plattforms (at least with
>> VFAT or NTFS)? You might get problems with the strict setting
>> otherwise.
>
> The above given paths are the sum of the minimal paths given
> on 9x and NT. /WINDOWS is given on both, /WINDOWS/COMMAND is
> given on 9x/Me, /WINDOWS/system32 and /WINDOWS/system32/Wbem
> are the paths on NT systems. I don't see a need so far to
> extend these paths since $PATH doesn't need to have all paths
> you can think of, but the minimal paths which allow to run
> applications from a subprocess of a daemon. The important
> paths are the ones which contain DLLs, not even the paths to
> Windows native commands are really necessary for that.
Yeah, that's clear, but I thought back at the time I tinkered with "strict" myself. At that time cygpath -S just returned the value of GetWindowsDirectory(), but unfortunately the physical entry on the disk was different concerning case. IIRC GetSystemDirectory delivered "C:\WinNT\Sytem32" for my system, but e.g. `cygpath -S`/ping with "strict" failed because in reality it was "C:\WinNT\system32". Therefore I've implemented in cygpath an additional lookup with GetFirstFile. The structure filled with this call had luckily the name of the directory with the real orthography. Since I believe you've seen more Windows versions than me (and my job does no longer force me to keep track of portability issues for the different Windows versions), I just want to point out, that you cannot rely on the Windows system calls concerning orthography. Additionally I am not sure if e.g. /WINDOWS/system32/Wbem is the really the same for all NT systems or if some have /WINDOWS/System32/wbem. For "strict" this matters though if you hard-code them.
Regards,
Jörg