有没有办法使用从 GetFileInformationByHandle() 获取的文件 id(FILE_ID_DESCR

Is there a way to open a file in a shared folder using the file id(FILE_ID_DESCRIPTOR) obtained from GetFileInformationByHandle()

本文关键字:文件 id FILE DESCR ID 获取 GetFileInformationByHandle 有没有      更新时间:2023-10-16

目前,我使用以下函数使用其ID打开文件。

volHandle = CreateFile(pVolName, ...);
fileHandle = OpenFileById(volHandle, &id, ...)

id(FILE_ID_DESCRIPTOR( 是从 GetFinalPathNameByHandle(( 获取的。

这适用于本地文件,但是当我在共享文件夹(从Windows或Unix机器(中的文件上尝试时,我得到了无效的volHandle。

有没有办法使用其 id(FILE_ID_DESCRIPTOR( 打开共享文件夹中的文件?

从 OpenFileById 的文档中,强调我的:

在 Windows 8 和 Windows Server 2012 中,以下技术支持此功能。

支持的技术

服务器消息块 (SMB( 3.0 协议 -

换句话说,您不能通过网络按 ID 号打开文件,只能在本地文件系统上打开文件。