Logiss.ru

Ваша компьютерная помощь
12 просмотров
Рейтинг статьи
1 звезда2 звезды3 звезды4 звезды5 звезд
Загрузка...

«Клиент не обладает требуемыми правами» в Windows 10

Устранение ошибки «Клиент не обладает требуемыми правами» в Windows 10

Иногда попытка скопировать или переместить файл в то или иное местоположение в Windows 10 вызывает появление окна ошибки с текстом «Клиент не обладает требуемыми правами». Давайте разберёмся, что вызывает эту проблему и как её устранить.

Внимание! Следующие действия можно выполнить только из-под аккаунта администратора!

Урок: Как получить права администратора в Windows 10

Способ 1: Настройка политики безопасности

Как становится понятно из текста ошибки, её причина заключается в сбоях системы контроля учётных записей. Следовательно, устранить проблему можно изменением параметров одной из политик локальной безопасности.

Вариант 1: «Локальная политика безопасности»

Пользователям Виндовс 10 редакций Корпоративная и Профессиональная удобнее всего будет задействовать специальную утилиту.

Локальные политикиПараметры безопасности

Вариант 2: «Редактор реестра»

Владельцам «десятки» версий Домашняя для решения задачи потребуется внести правки в системный реестр.

Метод с настройкой локальной политики безопасности довольно надёжный, однако отключение запроса полномочий администратора представляет собой уязвимость, так что озаботьтесь установкой надёжного антивируса.

Способ 2: «Командная строка»

Второй способ устранения рассматриваемого сбоя заключается в настройке прав доступа с помощью «Командной строки».

takeown /f «*путь к папке*» /r /d y

icacls «C:» /grant *имя пользователя*:F /t /c /l /q

icacls *диск*: /setintegritylevel m

Таким образом, мы рассмотрели, почему возникает ошибка «Клиент не обладает требуемыми правами» и как от неё можно избавиться.

Мы рады, что смогли помочь Вам в решении проблемы.

Помимо этой статьи, на сайте еще 12041 инструкций.
Добавьте сайт Lumpics. ru в закладки (CTRL+D) и мы точно еще пригодимся вам.

Отблагодарите автора, поделитесь статьей в социальных сетях.

Опишите, что у вас не получилось. Наши специалисты постараются ответить максимально быстро.

Как исправить ошибку «Отказано в доступе» на Windows?

Может случиться ситуация, что после переустановки Windows или еще по какой-то другой причине система Вам откажет в доступе к некоторым папкам или файлам на локальных дисках, особенно если на одном из таких дисков осталась предыдущая версия Windows.

Но что делать, если скажем у Вас на старом рабочем столе или в папке загрузок, или в папке документов, или еще в каком-то особенном месте находятся важные файлы? В настоящей статье рассмотрено данный вопрос и представлено два способа возврата доступа к таким папкам или файлам. Для примера, предложенные решения выполнялись в Windows 10, но нижеописанное справедливо для Windows 8 и Windows 7.

Вы администратор?

В большинстве случаев вам нужно быть администратором на своем ПК, чтобы вносить изменения в владельца файлов / папок. Возможно, вы сможете настроить разрешения в каталогах, которые принадлежат вам, но не будут иметь большого контроля в других местах.

Это сделано для того, чтобы все файлы на компьютере были приватными. Только администраторы могут получить доступ к файлам, принадлежащим другому пользователю. Кроме того, вам необходимо предоставить права администратора для внесения изменений в системные файлы, например, в папки Program Files и Windows.


Причины ошибки «Отказано в доступе к указанному файлу, возможно у вас нет нужных прав»

Среди причин появления проблемы следует отметить следующие:

В большинстве случаев причиной дисфункции является вирусный зловред

Исправьте ошибки доступа, отказавшись от прав собственности

Самое основное исправление, которое нужно попробовать, когда вы видите «Отказано в доступе к папке» — это взять на себя владение папкой через Проводник. Вот как это сделать.

Сначала щелкните правой кнопкой мыши нужную папку или файл и выберите «Свойства». В появившемся окне перейдите на вкладку Безопасность. Нас интересует кнопка «Дополнительно»; нажмите это.

В верхней части следующего окна вы увидите поле с надписью Владелец. Это, скорее всего, скажет «Невозможно отобразить текущего владельца», если у вас возникли проблемы. Нажмите на синюю ссылку Изменить рядом с этим, чтобы исправить это — обратите внимание, что для этого вам нужно быть администратором.

Мы предполагаем, что вы хотите стать владельцем этой папки под своей учетной записью, поэтому введите здесь свое имя пользователя. Если вы используете учетную запись Microsoft для входа в Windows 10, ваше имя пользователя — это первые пять букв вашего адреса электронной почты. Нажмите «Проверить имена», чтобы убедиться, что это правильно. Если это так, он автоматически изменится на PCNAMEUSERNAME. Нажмите ОК.

Читайте так же:
Как разблокировать загрузчик Xiaomi

Вернувшись в главное окно «Дополнительно», вы увидите поле внизу, которое начинается с Заменить все записи разрешений дочерних объектов. Если вы хотите, чтобы ваши изменения применялись ко всем папкам внутри текущей (что вы, вероятно, делаете в большинстве случаев), установите этот флажок. Затем дважды нажмите ОК, и все готово.

Будьте внимательны при изменении настроек владения файлами

При работе с ошибками «отказано в доступе» следует с осторожностью применять вышеуказанные действия. Избегайте владения папками в системных каталогах, таких как Windows, Program Files, Program Data или аналогичных.

Это ослабит безопасность вашей системы, поскольку обычные учетные записи не должны быть владельцами этих каталогов. Они содержат важные папки Windows, к которым вы не должны прикасаться.

Вы все еще можете получить доступ к этим папкам, используя описанный выше метод, не становясь владельцем.

Второй способ

Нажмите на папку с ограниченным доступом правой кнопкой мыши и выберите команду контекстного меню «Свойства». В открывшемся диалоговом окне свойств папки переключитесь на вкладку «Безопасность», затем нажмите на кнопку «Дополнительно».

В новом окне в строке владелец нажмите на ссылку «Изменить», если потребуется ввод пароля Вашей учетной записи, введите пароль и подтвердите действие.

Откроется диалоговое окно поиска и добавления учетной записи, такое же, как и в первом способе, описанном выше. Наберите в самом нижнем поле имя Вашей учетной записи и нажмите на кнопку «Проверить имена».

Система найдет и отформатирует имя Вашей учетной записи. Нажмите на кнопку «ОК», чтобы добавить найденную учетную запись.

Диалоговое окно закроется и в предыдущем окне, в строке «Владелец» Вы должны увидеть имя Вашей учетной записи. Обязательно поставьте под ним галочку «Заменить владельца подконтейнеров и объектов», чтобы получить доступ ко всем вложенным папкам и файлам в папке, к которой вы пытаетесь получить доступ, затем нажмите кнопку «Применить».

Согласитесь с предупреждением, что Вы хотите заменить разрешения для этой папки так, чтобы иметь права полного доступа, нажав на кнопку «Да».

В следующем информационном сообщении также нажмите кнопку «ОК».

В итоге вы должны увидеть в окне изменения владельца только один пункт с именем Вашей учетной записи.

Нажмите кнопку «ОК» и закройте основное диалоговое окно свойств папки, нажав кнопку «ОК».

Все! Папка должна открываться как обычно.

Просмотр разрешений для папок

Если вступить во владение папкой не удается, или вы являетесь администратором, который пытается предоставить разрешения кому-то другому, вам следует проверить, какие пользователи имеют какие разрешения для данной папки.

В свойствах папки откройте ту же вкладку «Безопасность», что и раньше. Вверху вы увидите список пользователей и групп на вашем ПК. Выберите запись здесь, и нижняя панель покажет, какие разрешения они имеют для этой папки.

Как и следовало ожидать, полный контроль дает вам полную власть над папкой и всем внутри. Чтение является наиболее ограничительным вариантом, так как он позволяет только увидеть, что находится в папке. См. страницу Microsoft о правах доступа к файлам и папкам для лучшего понимания.

Что делать в первую очередь?

Когда флешка пишет «Отказано в доступе», это следует понимать как некий запрет, который нужно снять. Обычно можно попытаться произвести только одно действие, о котором будет сказано ниже. Но гарантировать доступ к устройству даже с его помощью бывает невозможно. Посему самый простой способ решения проблемы состоит в том, чтобы отформатировать накопитель. Конечно, если на нем нет критически важной для пользователя информации.

Сделать это можно из стандартного «Проводника», вызвав соответствующую функцию в меню правого клика.

Дважды проверьте настройки антивируса

Иногда ваш антивирус может стать слишком усердным и в конечном итоге испортить вашу способность доступа к файлам. Если вы подтвердили, что все в порядке с вашими правами доступа к файлам, указанными выше, вы можете проверить это дальше.

Посмотрите на настройки вашей антивирусной программы и посмотрите, есть ли защита файлов или подобные настройки. Попробуйте отключить это, а затем снова получить доступ к файлу. Если это не дает эффекта, временно отключите антивирус полностью и посмотрите, поможет ли это.

Читайте так же:
Как перенести файлы на iPhone с компьютера

При попытке подключиться к интернету возникает ошибка 1231

В первую очередь следует проверить, не возникает ли ошибка 1231 по вине поставщика интернета. Для этого вам нужно запустить командную строку (Win + R — cmd, или правой кнопкой по кнопке Пуск — Командная строка) и ввести следующую команду:

net view \domain:имя домена,

где имя домена

означает адрес сервера, которые провайдер предоставил вам для подключения к Всемирной паутине. Если выдаётся «Системная ошибка 53. Не найден сетевой путь», то проблема именно со стороны поставщика услуги. В таком случае вам следует обратиться в техническую поддержку.

Если же такой ошибки не выбивает, придётся искать причину в своём компьютере или ноутбуке на Windows. Что можно сделать для исправления ошибки 1231?

Отсутствие прав Администратора

Не менее частая ситуация, когда юзеру в многопользовательской системе приходится заходить именно в свой сеанс (а не администраторский). При попытке открытия или изменения некоторых объектов, созданных Администратором, тоже может выдаваться ошибка «Отказано в доступе…».

Здесь вся суть проблемы состоит в том, что, как правило, обычный пользователь имеет в своем сеансе ограниченные права, устанавливаемые в системе Администратором компьютерного терминала. Понятно, что ограничения и могут касаться некоторых действий, производимых пользователем в системе, или просто отсутствия прав на открытие, изменение, удаление, перемещение и редактирование некоторых типов данных.

В этом случае нужно либо зайти в систему под Администратором, либо получить от него необходимые расширенные права.

Отказ в доступе к интернет-ресурсам

Наконец, доступ к некоторым сайтам и хранящимся на них файлах тоже может быть ограничен, поскольку сам ресурс требует обычной регистрации. Наверное, многие замечали на тех же форумах, что иногда нет возможности оставлять комментарии и скачивать файлы, поскольку вход с логином и паролем зарегистрированного пользователя не выполнен.

Само собой разумеется, что после такого входа или прохождения процедуры регистрации многие сервисы сайтов и находящиеся на них данные станут доступны для использования или загрузки.

Способ 3: «Редактор групповых политик»

Также в Windows 10 есть групповая политика, предназначенная как раз для решения рассматриваемой проблемы. Включить её можно через «Редактор групповых политик».

Обратите внимание! Оснастка «Редактор групповых политик» отсутствует в редакции Windows 10 Домашняя!

Переведите его в состояние «Включено».

Кликните «Применить» и «ОК».

Для сохранения изменений желательно перезагрузить компьютер.

Чем вызвана ошибка?

С ошибкой, связанной с изменением атрибутов, можно столкнуться по следующим причинам:

Как получить полные права администратора в Windows 10

ЛоготипДля полноценной работы с OS Windows и запуска некоторых приложений требуются права администратора. После получения расширенного доступа пользователь может менять настройки конфигурации сторонних и системных приложений или устанавливать новые правила безопасности (включать и отключать брандмауэр, удаленный доступ и т. д.). Далее мы расскажем, как получить права администратора в Windows 10 (на 32-Bit и 64-Bit версии).

Через командную строку

Запустите системную утилиту «Командная строка» через «Пуск». Она находится в меню «Служебные программы». Либо воспользуйтесь поиском по слову. В зависимости от сборки ОС сделать это можно нажав по значку лупы.

Служебные программы

Быстрый доступ к командной строке можно получить с помощью утилиты «Выполнить». Вызвать ее получится одновременным нажатием клавиш [knopka]Win[/knopka] (на ней нарисован флажок Windows) + [knopka]R[/knopka] на клавиатуре. Далее просто впишите «cmd» и нажмите «Ок».

Выполнить

Откроется командная строка. Здесь вбейте «net user администратор active:yes» (как на скриншоте) и нажмите [knopka]Enter[/knopka] на клавиатуре. Так вы сможете сделать себя администратором — пользователем с повышенными привилегиями.

cmd

Если на компьютере несколько учетных записей и вы заходите с гостя, то сперва придется переключиться на главную и авторизироваться под администратором (не путать с правами! потому что они могут быть отключены даже для главной учетной записи).

net user

Посмотреть список пользователей можно введя «net user». Они отобразятся в виде «Имя — статус» (администратор или гость). Чтобы посмотреть список разрешений пользователя введите «net user Имя учетной записи».

Если требуется запуск командной строки с правами администратора или вы все равно не можете получить доступ к папке, то попробуйте воспользоваться другими способами, описанным ниже.

Через реестр

Получить доступ к редактированию некоторых приложений через командную строку не всегда удается. Так как стать администратором — не значит выбрать главного пользователя (вместо учетной записи «Гость»), то приходится вносить изменения вручную, через реестр.

Читайте так же:
Ошибка в Скайпе: Вход невозможен ввиду ошибки передачи данных

Способ считается наиболее эффективным, но будьте предельно осторожны при выполнении каждого шага этой инструкции. Неверно установленные значения или удаление некоторых параметров могут повлечь за собой серьезные сбои в работе компьютера. Поэтому перед тем как удалить от имени администратора какой-то файл, убедитесь, что он не является системным.

Инструкция для получения прав:

  1. Запустите на ПК редактор реестра. Сделать это можно через системный инструмент «Выполнить» (или через пуск или горячими клавишами [knopka]Win [/knopka]+ [knopka]R[/knopka]).

Запуск редактора реестра

  1. Вбейте команду «regedit» и нажмите [knopka]Enter[/knopka] на клавиатуре. Откроется окошко редактора реестра. Для удобной работы программа разбита на две части. В левой части отображаются папки, в правой — параметры реестра. Их можно редактировать и удалять. Если нужного параметра нет, то просто создаем его.
  2. В левой части экрана найдите и выберите папку «HKEY_LOCAL_MACHINE» (локальные параметры). Появится несколько подгрупп – кликните по «Software» (программное обеспечение).

HKEY_LOCAL_MACHINE

  1. Откроется список доступных для редактирования приложений. Найдите здесь папку «Microsoft» и в ней выберите «Windows».

Папка Windows

  1. Появится еще несколько дополнительных директорий. Выберите самую первую. Она носит название «Current version» (текущая версия). Нажмите на небольшой треугольник, чтобы открыть список дополнительных папок. После этого перейдите в «Polices» (политики).

Current version

  1. Чтобы сделать учетную запись администратором, перейдите в папку «System».

System

  1. В правой части экрана найдите параметр «FilterAdministratorToken». Если такого нет, то просто создайте его (для этого кликните правой кнопкой мыши и нажмите «Создать строковый параметр»). Для него установите значение «1».

Создать строковый параметр

  1. Аналогичные действия выполните для параметра «EnableLUA».

EnableLUA

  1. Найдите и выберите «ConsentPromptBehaviorAdmin» и убедитесь, что здесь стоит «0». Если тут «1», то параметр придется сменить.

ConsentPromptBehaviorAdmin

После этого закройте окно для редактирования реестра. Помните, что поменять значения на исходные и вернуть ограниченный доступ пользователю вы можете в любое время.

Если при попытке включить программу с правами администратора система пишет, что клиент не обладает требуемыми правами, то перезагрузите компьютер, чтобы изменения вступили в силу. После этого вы получите полные возможности для работы с Windows, и система больше не будет уведомлять, что для использования программы sfc необходимы права администратора.

Через редактор локальных политик

Так как обладать правами администратора может не только главный пользователь, но и гость, то чтобы получить полный доступ, следуйте инструкции:

  1. Запустите приложение «Выполнить» на своем PC нажатием комбинации клавиш [knopka]Win[/knopka] и [knopka]R[/knopka]. В пустом поле введите «secpol.msc» и нажмите «Ок».

secpol.msc

  1. Либо откройте «Пуск»«Панель управления».

Панель управления

Вид - значки

  1. Здесь найдите пункт «Администрирование» (для удобства рекомендуем установить отображение значков в виде мелких или крупных, а не «Категории») и выберите «Локальная политика безопасности».

Категории

  1. Откроется редактор локальной политики безопасности (не путать с групповым!). Он представляет собой небольшое окошко, разделенное на две части. В левой части экрана выберите самый первый пункт «Параметры безопасности» (открывается по умолчанию).

Параметры безопасности

  1. После этого, в правой части появится список локальных политик (их можно отсортировать по имени или описанию). Выберите пункт «Локальные политики» (либо откройте это меню сразу, выбрав соответствующий раздел в левой части экрана).

Локальные политики

  1. Кликните правой кнопкой мыши по папке «Политики безопасности». Откроется список доступных для редактирования конфигураций.

Политики безопасности

  1. Пролистайте его до самого низа (для удобства кликните по строчке «Имя», чтобы отфильтровать по алфавиту) и найдите здесь политику «Состояние учетной записи администратор». Нажмите ее. Откроется небольшое окошко, где в первой вкладке отметьте параметр «Включен».

Состояние учетной записи администратор

Нажмите «Применить», чтобы сохранить внесенные изменения. Чтобы они вступили в силу, придется перезагрузить компьютер или ноутбук. При первом запуске система определит вас как администратора.

Итоги и комментарии

На этом все, надеемся вопрос о том, как получить администраторские права в Windows 10, мы раскрыли, но, если даже у вас остались вопросы – смело задавайте их в комментариях.

Клиент не обладает требуемыми правами windows 10 как убрать

Многие из пользователей сталкивались с такой ситуацией наверняка. В учётной записи пользователя с правами администратора (а другой обычно на личном компьютере и нет), Windows при попытке открыть конкретный файл, папку, а иногда и целую директорию (или даже том) отказывается это делать. Под предлогом, что, мол, не хватает прав:

Читайте так же:
Comodo Internet Security скачать бесплатно русская версия

произошла ошибка при открытии данного документа

файл pdf не открывается из-за отсутствия прав

у вас нет разрешений на доступ к этой папке

и как следствие:

вам отказано в доступе к этой папке

И что более всего напрягает: как так-то? Я и есть администратор, по-крайней мере, с полным набором административных прав. А тут опять прав мало…

отказано в доступе

Почему не хватает прав?

Ответов только два.

Папку или файл создали не вы. По крайней мере, не В ЭТОЙ СИСТЕМЕ или не этой учётной записи. Текущая система потому посчитала, что владельцем являетесь опять же не вы.

После определённых манипуляций с UAC сработал триггер (ошибочно или намеренно), захватывая теперь некоторые файлы. Виной тому некоторые файловые атрибуты, сохраняющиеся в метаданных файлов и папок. Особенно часто такая картина проявляется в случае, когда система переустановлена, а вы пытаетесь получить доступ к файлам и папкам на другом диске, который использовался как хранилище.

Исправляем…

Как видно из описания, прародителем запрета в обоих случаях является пресловутый UAC (Контроль учётных записей) Windows. Потому и решение проблемы с правами лежит в плоскости работы с UAC. А значит мы можем выбрать несколько способов, которые помогут от этой «ошибки» избавиться. Но не думайте, что выключив UAC в настройках Учётных записей пользователей, откатив ползунок уведомлений вниз, вы о него избавились:

отключить uac из панели

Всё не так просто, да и контроль UAC отключать в нашем случае не обязательно.

Не хватает прав для конкретного файла или папки

Если эта проблема не успела намозолить глаза и не является повальной для системы, можно попробовать избавиться от неё прямо в свойствах к файлу/папке. Вызовем меню свойств файла/папки и выберем вкладку Безопасность:

если не хватает прав

откройте в новой вкладке, чтобы увеличить

В окне Выбор «Пользователи» или «Группы» введите имя своей учётной записи или начните вводить и щёлкните Проверить имена. Учётная запись пользователя будет обнаружена, и кнопкой ОК вы добавите её в список тех, кто имеет необходимые к документу/папке права. Ваша учётка сразу появится и в среднем окне Разрешения для группы…

получить доступ и разрешения

осталось соглашаться с диалоговыми окнами

Выставляйте галочку в чекбоксе Разрешить. Применяйте и соглашайтесь во всех последовательно открытых окнах. Перезагрузка вряд ли потребуется. Сразу попробуйте. Этот вариант применим ко всем файлам, папкам и даже директориям.

Если файлы по-прежнему не открываются, зададим разрешения учётным записям. В свойствах файла/папки/диска смените или задайте владельцев:

задать владельца папке

Возможно, чтобы проблема с недостаточностью прав исчезла, придётся попробовать присвоить права или текущему пользователю или администратору (как на рисунке).

Добавляем специальный пункт в меню дополнительных команд

Для меню дополнительных команд, которое появляется после щелчка по выбранному правой мышкой, есть маленький хак. С его помощью в меню можно добавить ещё один пункт, который говорит сам за себя:

права к защищённому файлу

У меня этому посвящена статья Как получить полный доступ к папкам и файлам , там всё раскладывается по полкам. Или просто добавьте к реестру распакованный из архива файл. Проверьте.

Снимаем триггер в групповой политике: для всей системы в целом

Права-то правами, но и сама система UAC с сопутствующими функциями работает далеко не безошибочно. Так что есть вариант проверить настройки для Контроля учётных записей: не появилось ли там некое событие, которое и заставляет UAC «нервно реагировать». Вводим быструю команду в строке поиска

Крутим справа мышкой до пункта Контроль учётных записей: все администраторы работают в режиме… :

«Клиент не обладает требуемыми правами» в Windows 10


Barmutik   ( 2002-03-25 18:42 ) [0]

Пытаюсь сохранить кусок своего реестра в файл для последующего использования. На все мои попытки вызвать эту функцию вываливается только результат False и создаётся файл нулевого размера.

Приведу кусок кода, может поможет:

var
MyRegistry: TRegistry;
begin
MyRegistry := TRegistry.Create;
try
MyRegistry.RootKey := HKEY_CURRENT_USER;
if not MyRegistry.SaveKey"SoftwareXXXXXXXXX",
"C:1.reg") then
begin
MessageDlg("Can"t save a registry to file", mtError,
[mbOK], 0);
end;
finally
MyRegistry.Free;
end;

И что бы я не делал сохранение никогда не проходит. Создаётся файл нулевого размера. Указанный ключ точно существует. Читал в хелпе что необходимо под FAT сохранять только в несуществующий(новый) файл и использовал файл без расширения. Ничего не помогает.

Читайте так же:
Как посмотреть МАК адрес компьютера на Windows 7

Подскажите что делать.. Только плиз реальный комментарий.


Внук   ( 2002-03-26 12:29 ) [3]

Создание пустого файла наталкивает на мысль, что недостаточно прав на выполнение операции. И действительно, немного исправив приведенный здесь код его эквивалентом (см. исходники):

var MyRegistry: TRegistry;
SaveError:integer;
begin
MyRegistry:=TRegistry.Create;
MyRegistry.Access:=KEY_ALL_ACCESS;
SaveError:=RegSaveKey(HKEY_LOCAL_MACHINE,"Test",nil);
ShowMessage(SysErrorMessage(SaveError));
MyRegistry.Free;
end;

получим в результате сообщение: клиент не обладает требуемыми правами 🙂


Barmutik   ( 2002-03-26 18:15 ) [4]

Ну так и результат каков ? Ты не дал ответа на вопрос !

А насчёт KEY_ALL_ACCESS так в хелпе по SaveKey написано что он открывает указанный для записи ключ именно с такими правами.

Люди помогите ! Я по-прежнему в поиске ответа !

1. Получить необходимые привилегии
2. Использовать ключики командной строки Regedit.exe


Внук   ( 2002-03-26 18:58 ) [6]

>>Barmutik ©
Не дал, верно 🙂 Я готовые куски кода редко даю, это мой метод отсева халявщиков. Вы правы насчет KEY_ALL_ACCESS, он здесь не обязателен, поскольку устанавливается в конструкторе, это моя привычка явного контроля за всеми мелочами.
Но. повторяю — смотрите исходники, а они для TRegistry на удивление прозрачны. Переписав Ваш код на API, получим то, что на самом деле делает TRegistry:

var Err:integer;
Hndl:HKEY;
begin
Err:=RegOpenKeyEx(HKEY_CURRENT_USER,PChar("Что-нибудь"),0,KEY_ALL_ACCESS,Hndl);
ShowMessage(SysErrorMessage(Err));
Err:=RegSaveKey(Hndl,"Test",nil);
ShowMessage(SysErrorMessage(Err));
.
end;
Здесь видно, что операция открытия ключа проходит успешно, а на операции экспорта выдается сообщение — недостаточно прав. Причем, я уверен, под Windows95 Ваш первоначальный код будет работать — попробуйте.
Далее — смотрим описание функции RegSaveKey и видим: The calling process must have the SE_BACKUP_NAME privilege. Это справедливо только для линии WinNT. Дальше попробуйте сами побродить по Help"у.


Barmutik   ( 2002-03-26 19:11 ) [7]

То Внук:

Прочитав Ваш первоначальный ответ я залез в хелп и прочитал про
RegSaveKey. Я прочитал про SE_BACKUP_NAME. Также просмотрел ссылку про привилегиям.

Не поленился и просмотрел код TRegistry.SaveKey.. Да там всё до безобразия понятно. Этот метод вызывают API-шную функцию.

Ещё вчера я не поленился и запустил это кусочек под Win95 и там проблем не возникло, но не если Вы можете заметить то мой вопрос относится имеено к Win2000.

Насчёт метода отсева халявщиков: возможно это конечно и классно,
но если подойти по-другому я же прошу Вас писать за меня то что мне нужно а дать конкретный ответ к коим Ваш совет "побродить по хелпу не относится".

Если не трудно варианты получения привелегий для возможности копирования куска реестра в файл.


Anatoly Podgoretsky   ( 2002-03-26 20:51 ) [8]

Ответь на такой вопрос, а с помощью regedit ты можещь сохоанить тот же самы ключ в тоже самое место?
Если можешь, то надо разбираться с кодом, если нет то с правами.


SeF   ( 2002-03-27 03:32 ) [9]

выполни комманду:
regedit /e имя_файла полный_путь_в_реестре_до_нужного_ключа
например:
regedit /e software_hklm.reg HKEY_LOCAL_MACHINESOFTWARE

1.Вариант использования Regedit привел SeF
2.Порядок получения привилегий следующий:

var
TokenHandle : THandle;
ProcId : DWORD;
Priv, Dummy : TOKEN_PRIVILEGES;
Ver : TOSVERSIONINFO;
const
SE_BACKUP_NAME = "SeBackupPrivilege";
begin
Ver.dwOSVersionInfoSize := Sizeof(Ver);
GetVersionEx(Ver);
if Ver.dwPlatformId = VER_PLATFORM_WIN32_NT then
begin
ProcID := 0;
if (OpenProcessToken(GetCurrentProcess, TOKEN_ADJUST_PRIVILEGES or
TOKEN_QUERY, TokenHandle)) and
(LookupPrivilegeValue(nil, SE_BACKUP_NAME, Priv.Privileges[0].Luid))
then
begin
Priv.PrivilegeCount := 1;
Priv.Privileges[0].Attributes := SE_PRIVILEGE_ENABLED;
if not AdjustTokenPrivileges(TokenHandle, False, Priv, SizeOf(Dummy),
Dummy, ProcId) then
raise Exception.Create(SysErrorMessage(GetLastError));
end
else
raise Exception.Create(SysErrorMessage(GetLastError));
end;
//А здесь поместите код работы с реестром
end;

После этого Microsoft настоятельно рекомендует полученные привилегии аналогичным образом возвратить (установить SE_PRIVILEGE_DISABLED)


Внук   ( 2002-03-27 09:25 ) [11]

>>Barmutik ©
Просто побродить по Help"y — это, конечно, совсем никакой совет. Но я ведь указал направление поиска. Ваши слова "Я прочитал про SE_BACKUP_NAME. Также просмотрел ссылку по привилегиям." — тому доказательство. Но жаль, что до конца не разобрались, получили все-таки готовый ответ в виде кода.
Впрочем, хочется верить, что Вы на меня не в обиде. Форум-то не без добрых людей :)))


Barmutik   ( 2002-03-27 10:17 ) [12]

Спасибо всем кто отозвался и помог !

Ссылка на основную публикацию
Adblock
detector