Wrong value for |FileNormalizedNameInfo| (|24| vs. |48|) in Cygwin 3.6 /usr/include ...
Brian Inglis
Brian.Inglis@SystematicSW.ab.ca
Sat May 11 16:17:18 GMT 2024
On 2024-05-11 05:30, Roland Mainz via Cygwin wrote:
> I'm writing a test program for |FileNormalizedNameInfo| right now (see
> https://rovema.kpaste.net/07074abc).
> Per https://learn.microsoft.com/en-us/windows/win32/api/minwinbase/ne-minwinbase-file_info_by_handle_class
> |FileNormalizedNameInfo| should be |24|, but on Cygwin 3.6 I get the
> value |48|.
> Since |GetFileInformationByHandleEx()| gives me error 87 (="Invalid
> Parameter") for |48|, but works as intended for |24| I assume that the
> Cygwin header is wrong.
>
> Could someone please check the Cygwin header files ?
Could someone please read the enum constant names and classes carefully?
Package w32api-headers:
> Headers:
> ---- snip ----
> $ grep -r FileNormalizedNameInfo /usr/include/
> /usr/include/w32api/ddk/wdm.h: FileNormalizedNameInformation,
> /usr/include/w32api/minwinbase.h: *FileNormalizedNameInfo*,
> /usr/include/w32api/winternl.h: FileNormalizedNameInformation = 48,
> ---- snip ----
*FileNormalizedNameInfo* 24/0x18 is defined in minwinbase.h
FILE_INFO_BY_HANDLE_CLASS for GetFileInformationByHandleEx whereas
*FileNormalizedNameInformation* 44/0x2e is defined in winternl.h
FILE_INFORMATION_CLASS for NtQueryInformationFile:
https://learn.microsoft.com/en-us/windows-hardware/drivers/ddi/ntifs/nf-ntifs-ntqueryinformationfile
ditto in ddk/wdm.h!
--
Take care. Thanks, Brian Inglis Calgary, Alberta, Canada
La perfection est atteinte Perfection is achieved
non pas lorsqu'il n'y a plus rien à ajouter not when there is no more to add
mais lorsqu'il n'y a plus rien à retirer but when there is no more to cut
-- Antoine de Saint-Exupéry
More information about the Cygwin
mailing list