Я написал инструмент на C #, который должен удалять пользовательские папки старых пользователей после некоторых проверок безопасности.
Проблема в том, что, хотя я запускаю приложение от имени администратора (с минимальными настройками UAC), приложение не имеет достаточных прав ... Я получаю исключения, которые говорят, что доступ запрещен.
Если я пытаюсь вручную удалить папку в проводнике, мне предлагается сделать это от имени администратора, и я нажимаю кнопку продолжить ("fortsetzen" в моей немецкой версии), и она работает нормально, что доказывает, что я / мой логин действительно имеет необходимые права.
Если я использую cmd.exe с del /S /Q C:\User\{user}"
он говорит, что доступ запрещен, хотя ...
Что мне нужно сделать, чтобы это работало?
Разве не достаточно быть администратором?
Дополнительная информация:
ОС: Windows 7 Enterprise успешно присоединена к домену samba.
Это все пользователи домена.
Профили пользователей существуют только локально.
Я являюсь членом группы доменов под названием "edv" (немецкий эквивалент "IT")
Эта группа добавляется в локальную группу администраторов клиента, где выполняется мое приложение.
Решено благодаря lzam
гуманный:
Я должен был сделать следующие вещи:
- Взять на себя ответственность
- Установить права
- Удалить флаг защиты от записи
- Удали это
Для получения дополнительной информации о том, как сделать это в C #, см. Мой оригинальный пост stackoverflow здесь.