Метод IBackgroundCopyJob::TakeOwnership (bits.h)
Изменяет владельца задания на текущего пользователя.
Синтаксис
HRESULT TakeOwnership();
Возвращаемое значение
Этот метод возвращает следующие значения HRESULT , а также другие.
Код возврата | Описание |
---|---|
|
Владение заданием было успешно изменено. |
|
Состояние задания не может быть BG_JOB_STATE_CANCELLED или BG_JOB_STATE_ACKNOWLEDGED. |
|
У нового владельца недостаточно доступа к временным файлам на клиентском компьютере. BITS создает временные файлы, используя разрешения безопасности владельца. |
|
Сопоставление сетевого диска текущего владельца для локального файла отличается от сопоставления предыдущего владельца. |
|
У пользователя нет прав администратора. |
Комментарии
Чтобы стать владельцем задания, пользователь должен иметь права администратора на клиенте. В Windows Vista пользователь должен выполняться в состоянии с повышенными привилегиями. После получения прав владения все будущие обновления задания должны выполняться, пока пользователь работает в состоянии с повышенными привилегиями. Дополнительные сведения см. в разделе Пользователи и сетевые Connections.
Администратору не нужно владеть заданием другого пользователя, чтобы изменить его свойства или добавить в него файлы. Как правило, администратор использует метод TakeOwnership , если у пользователя нет достаточных разрешений для выполнения задания или если пользователь не вошел в систему и администратору необходимо выполнить задание.
После изменения владельца задания задание обрабатывается только при входе нового владельца в клиент. Вызовите метод IBackgroundCopyJob::GetOwner , чтобы получить идентификатор безопасности нового владельца.
Если администратор отменит задание после получения прав владения, возможно, файлы будут потеряны, так как у администратора нет разрешения на запись в файлы. Это может произойти, если место назначения локального файла находится в перемещаемом профиле предыдущего пользователя.
Метод TakeOwnership удаляет учетные данные, сертификаты, пользовательские заголовки и уведомление из командной строки , если он задан.
Если задание указывает уведомление о событии, обратный вызов выполняется в контексте пользователя, вызвавшего метод IBackgroundCopyJob::SetNotifyInterface .
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Windows XP |
Минимальная версия сервера | Windows Server 2003 |
Целевая платформа | Windows |
Header | bits.h |
Библиотека | Bits.lib |
DLL | QmgrPrxy.dll |