有没有办法使用GetFileInformationByHandle()和fopen()分配的stdio文件句柄?使用fstat()和fileno()是不够的,因为我需要获取一些不属于struct stat的Windows特定信息,所以我想知道是否有任何方法可以提供stdio FILE *句柄到GetFileInformationByHandle()?
答案 0 :(得分:3)
使用_fileno()
获取文件编号(不,我不知道为什么Microsoft添加_
,而不是“ISO C ++一致性”),然后_get_osfhandle()
来自文件号为HANDLE
。我不记得为什么msvcrt使用文件编号而不是直接将FILE
绑定到HANDLE
(但我认为这是为了POSIX兼容性?)。