Функция DavGetTheLockOwnerOfTheFile (davclnt.h)

Возвращает владельца блокировки файла для файла, заблокированного на сервере WebDAV.

Синтаксис

DWORD DavGetTheLockOwnerOfTheFile(
  [in]            LPCWSTR FileName,
  [out, optional] PWSTR   LockOwnerName,
  [in, out]       PULONG  LockOwnerNameLengthInBytes
);

Параметры

[in] FileName

Указатель на строку Юникода, завершающуюся null, которая содержит имя заблокированного файла на сервере WebDAV. Эта строка должна иметь один из следующих форматов:

  • \\server\path\filename
  • drive:\filename
Где server — это имя сервера, путь — это путь к удаленному файлу на сервере, filename — допустимое имя файла, а диск — это буква диска, с которой сопоставляется удаленная общая папка на локальном компьютере. ( Общая папка — это каталог на сервере, который предоставляется пользователям по сети.)

[out, optional] LockOwnerName

Указатель на буфер, выделенный вызывающим объектом, который получает имя владельца блокировки файла. Этот параметр является необязательным и может иметь значение NULL. Если значение равно NULL, параметр LockOwnerNameLengthInBytes должен указывать на ноль при входных данных.

[in, out] LockOwnerNameLengthInBytes

Указатель на переменную, которая во входных данных указывает максимальный размер (в символах Юникода) буфера, на который указывает параметр LockOwnerName . Если функция выполнена успешно, на выходе переменная получает количество символов, скопированных в буфер. Если функция завершается сбоем с ERROR_INSUFFICIENT_BUFFER, на выходе переменная получает количество символов, необходимое для хранения имени владельца блокировки, включая завершающий символ NULL .

Возвращаемое значение

Если функция выполнена успешно, возвращаемое значение будет ERROR_SUCCESS.

Если функция завершается сбоем, возвращаемое значение представляет собой системный код ошибки, например одно из следующих значений.

Код возврата Описание
ERROR_INSUFFICIENT_BUFFER
Буфер, на который указывает параметр LockOwnerName , недостаточно велик для хранения имени владельца блокировки.
ERROR_INVALID_PARAMETER
Одно или несколько значений параметров были недопустимыми. Например, этот код ошибки возвращается, если параметр FileName является пустым указателем.

Комментарии

Если вызов функции, например CreateFile , для файла на сервере WebDAV завершается сбоем с ERROR_LOCK_VIOLATION, можно использовать функцию DavGetTheLockOwnerOfTheFile , чтобы определить владельца блокировки файла.

Чтобы получить необходимую длину буфера для буфера LockOwnerName, вызовите Метод DavGetTheLockOwnerOfTheFile с параметром LockOwnerName, для параметра LockOwnerName и LockOwnerNameLengthInBytes равным нулю. Возвращаемое значение равно ERROR_INSUFFICIENT_BUFFER, а в выходных данных параметр LockOwnerNameLengthInBytes получает необходимую длину буфера.

Требования

   
Минимальная версия клиента Windows Vista [только классические приложения]
Минимальная версия сервера Windows Server 2008 [только классические приложения]
Целевая платформа Windows
Header davclnt.h
Библиотека Davclnt.lib
DLL Davclnt.dll