У меня есть приложение С #, в котором у меня должен быть доступ на чтение / запись к корню диска C. Я понимаю, что могу скомпилировать код и запустить исполняемый файл от имени администратора, и он работает. Но мне нужно его отладить, и я не уверен, как запустить приложение в Visual Studio.
Я пробовал добавить:
<requestedExecutionLevel level="asInvoker" uiAccess="true" />
в мой манифест, но я все еще получаю ошибку отказа в доступе.
Вот строка кода, которая терпит неудачу:
MemoryMappedFile mmf = MemoryMappedFile.CreateFromFile(@"c:\somemapnamefile.data", System.IO.FileMode.OpenOrCreate, "somemapname", 1000);
На данный момент у меня есть работа, но я хотел бы знать на будущее.
c#
visual-studio
carny666
источник
источник
Ответы:
Просто запустите визуальную студию как администратор. Любая программа, которую вы оттуда отлаживаете, также будет запускаться от имени администратора.
источник
VS должен запускаться с правами администратора. однако более элегантный способ - указать requiredExecutionLevel в манифесте, который должен иметь значение «requireAdministrator».
<requestedExecutionLevel level="requireAdministrator" uiAccess="false" />
Когда вы откроете проект и попытаетесь отладить, VS2012 предупредит о праве администратора и перезапустится с правами администратора. Кроме того, exe-файл будет отмечен как требующий администратора в первую очередь, поэтому при развертывании вам не нужно настраивать права администратора в свойствах файла.
источник
Вы также можете установить эту опцию администратора автоматически:
источник
Compatibility > Run As Administrator
.Чтобы ответить на вопрос в заголовке, вы можете просто выбрать Запуск от имени администратора в контекстном меню при запуске VS.
источник
Теперь проверенный ответ работать не будет.
Вы должны найти опцию для этого в свойствах проекта Linker -> Manifest File -> UAC Execution Level . Установите для этого параметра requireAdminstrator .
Это приведет к тому, что сгенерированный по умолчанию манифест будет включать в себя необходимый вам requiredExecutionlevel, так что вашим пользователям будет автоматически предлагаться повысить свои привилегии, если они еще не повышены.
источник
«Эта задача требует применения иметь повышенные разрешения» ошибка возникает из - за текущего пользователя не имеет достаточных привилегий для открытия Visual Studio.
Как временное решение
Вы можете решить эту проблему, щелкнув правой кнопкой мыши визуальную студию и выбрав запускать от имени администратора каждый раз, когда вы собираетесь ее открыть.
Как постоянное решение ,
Вы можете проверить устранение неполадок совместимости
источник