unlockFileEx 函数 (fileapi.h)

解锁指定文件中的区域。 此函数可以同步或异步运行。

语法

BOOL UnlockFileEx(
  [in]      HANDLE       hFile,
            DWORD        dwReserved,
  [in]      DWORD        nNumberOfBytesToUnlockLow,
  [in]      DWORD        nNumberOfBytesToUnlockHigh,
  [in, out] LPOVERLAPPED lpOverlapped
);

参数

[in] hFile

文件的句柄。 必须使用 GENERIC_READGENERIC_WRITE 访问权限创建句柄。 有关详细信息,请参阅 文件安全和访问权限

dwReserved

保留参数;必须为零。

[in] nNumberOfBytesToUnlockLow

要解锁的字节范围长度的低序部分。

[in] nNumberOfBytesToUnlockHigh

要解锁的字节范围长度的高阶部分。

[in, out] lpOverlapped

指向函数用于解锁请求的 OVERLAPPED 结构的指针。 此结构包含解锁范围开头的文件偏移量。 必须将 hEvent 成员初始化为有效的句柄或零。 有关详细信息,请参阅 同步和异步 I/O

返回值

如果该函数成功,则返回值为非零值。

如果函数失败,则返回值为零或 NULL。 要获得更多的错误信息,请调用 GetLastError。

注解

解锁文件的某个区域会释放以前获取的文件锁。 要解锁的区域必须与现有的锁定区域完全对应。 文件的两个相邻区域不能单独锁定,然后使用跨两个锁定区域的单个区域解锁。

在 CloseHandle 函数完成处理之前释放锁。

在 Windows 8 和 Windows Server 2012 中,此函数由以下技术支持。

技术 支持
服务器消息块 (SMB) 3.0 协议
SMB 3.0 透明故障转移 (TFO)
具有横向扩展文件共享的 SMB 3.0 (SO)
群集共享卷文件系统 (CSV)
弹性文件系统 (ReFS)

要求

   
最低受支持的客户端 Windows XP [桌面应用 | UWP 应用]
最低受支持的服务器 Windows Server 2003 [桌面应用 | UWP 应用]
目标平台 Windows
标头 fileapi.h (包括 Windows.h)
Library Kernel32.lib
DLL Kernel32.dll

另请参阅

锁定和解锁文件中的字节范围

CreateFile

文件管理函数

LockFile

LockFileEx

OVERLAPPED

同步和异步 I/O

UnlockFile