DavGetTheLockOwnerOfFile 函数 (davclnt.h)
返回 WebDAV 服务器上锁定的文件的文件锁所有者。
语法
DWORD DavGetTheLockOwnerOfTheFile(
[in] LPCWSTR FileName,
[out, optional] PWSTR LockOwnerName,
[in, out] PULONG LockOwnerNameLengthInBytes
);
参数
[in] FileName
指向以 null 结尾的 Unicode 字符串的指针,该字符串包含 WebDAV 服务器上锁定的文件的名称。 此字符串必须具有以下格式之一:
- \\server\path\filename
- drive:\filename
[out, optional] LockOwnerName
指向调用方分配的缓冲区的指针,该缓冲区接收文件锁的所有者的名称。 此参数是可选的,可以为 NULL。 如果为 NULL, 则 LockOwnerNameLengthInBytes 参数在输入时必须指向零。
[in, out] LockOwnerNameLengthInBytes
指向输入上的变量的指针指定 LockOwnerName 参数指向的缓冲区的最大大小(以 Unicode 字符为单位)。 如果函数成功,则输出时变量将接收复制到缓冲区中的字符数。 如果函数失败并出现ERROR_INSUFFICIENT_BUFFER,则输出时变量会收到存储锁所有者名称所需的字符数,包括终止 NULL 字符。
返回值
如果函数成功,则返回值为 ERROR_SUCCESS。
如果函数失败,则返回值是 系统错误代码,例如以下值之一。
返回代码 | 说明 |
---|---|
|
LockOwnerName 参数指向的缓冲区不够大,无法存储锁所有者名称。 |
|
一个或多个参数值无效。 例如,如果 FileName 参数为 null 指针,则返回此错误代码。 |
备注
如果对 WebDAV 服务器上的文件的 CreateFile 等函数的调用失败并ERROR_LOCK_VIOLATION,可以使用 DavGetTheLockOwnerOfTheFile 函数来确定文件锁的所有者。
若要获取 LockOwnerName 缓冲区所需的缓冲区长度,请调用 DavGetTheLockOwnerOfFile,并将 LockOwnerNameLengthInBytes 设置为零。 返回值为 ERROR_INSUFFICIENT_BUFFER,输出时 LockOwnerNameLengthInBytes 参数接收所需的缓冲区长度。
要求
最低受支持的客户端 | Windows Vista [仅限桌面应用] |
最低受支持的服务器 | Windows Server 2008 [仅限桌面应用] |
目标平台 | Windows |
标头 | davclnt.h |
Library | Davclnt.lib |
DLL | Davclnt.dll |