POSIX 2008提供了一系列具有* at()前缀的函数,如 openat() ,它对相对于给定目录描述符的文件进行操作 . 这些函数在多线程环境中看起来很实用,因为如果某个线程调用 chdir()fchdir() ,它们可以避免潜在的竞争 . 正如我所看到的那样,使用Nt API(如 NtCreateFile() )可以实现相同的目标,如果 OBJECT_ATTRIBUTES 结构具有 RootDirectory 成员集 . 我想做的是 NtCreateFile() Nt处理并将其转换为Win32句柄,因为我的很多API依赖于Win32句柄(例如我理解 ReadFile() 只能在Win32句柄上工作) . 可能吗?或者我应该重写整个API以使用Nt函数(例如 NtReadFile()NtWriteFile() 等)?