Shanks, а так ли нужно делать это батником?... Возможно пользователю будет проще сделать это через GUI?
Момент второй: помимо того, что вы станете владельцем файла используя takeown вам необходимо еще обладать разрешениями на этот файл, которых у вас нет. Изменение владельца объекта не компенсирует отсутствие разрешений, но уже позволяет их изменять. Поэтому и нужен icacls, который фактически заменяет и даже больше чем просто заменяет действия через интерфейс, необходимые для выставления разрешений на объекты. То есть команда, необходимая вам примерно выглядит так:
Код:
takeown /f "%windir%\system32\c_1251.nls" && icacls "%windir%\system32\c_1251.nls" /grant имя_пользователя_или_группы:f
то что красным выделено соответственно нужно поменять на свое имя пользователя или на имя группы, к которой принадлежит пользователь
в вашем случае наверняа пользователи находятся в группе Администраторы, поэтому там так и можно написать -
администраторы:f и тогда можно делать так:
Код:
takeown /f "%windir%\system32\c_1251.nls" /a && icacls "%windir%\system32\c_1251.nls" /grant администраторы:f
И так, для пользы дела, почитайте:
Как получить доступ к файлам, папкам, разделам реестра в Windows Vista