文件句柄

当某个进程使用 CreateFile 函数打开文件时, 文件句柄 将与之关联,直到进程终止或使用 CloseHandle 函数关闭句柄为止。 文件句柄用于标识许多函数调用中的文件。

每个文件句柄和文件对象通常对于打开文件的每个进程都是唯一的,唯一的例外是复制进程持有的文件句柄,或者当子进程继承父进程的文件句柄时。 在这些情况下,这些文件句柄是唯一的,但可以看到单个共享文件对象。 有关复制进程保留的文件句柄的详细信息,请参阅 DuplicateHandle

请注意,虽然文件句柄通常对进程是专用的,但文件处理指向的文件数据不是。 因此,共享同一文件的进程和线程必须同步其访问。 对于文件的大多数操作,进程通过其专用句柄池来标识文件。