Как передать административные права моему приложению C #? файл манифеста - PullRequest
0 голосов
/ 05 декабря 2009

У меня возникли проблемы с моим приложением на C #, которое использует win32_networkingadapterconfig. Проблема в том, что я не могу использовать изменяющие функции в win32_networkingadapterconfig, когда использую приложение для пользователя, у которого нет прав администратора. Я пытался «работать от имени администратора», но не повезло. И я попытался создать манифест с этим содержимым в части trustInfo:

<security>
  <applicationRequestMinimum>
    <PermissionSet class="System.Security.PermissionSet" version="1" Unrestricted="true" ID="Custom" SameSite="site" />
    <defaultAssemblyRequest permissionSetReference="Custom" />
  </applicationRequestMinimum>
  <requestedPrivileges xmlns="urn:schemas-microsoft-com:asm.v3">

    <requestedExecutionLevel level="requireAdministrator" uiAccess="false" />

  </requestedPrivileges>
</security>

Включить настройки безопасности Clickone установлены на полное доверие. Что я делаю не так?

Ответы [ 2 ]

4 голосов
/ 05 декабря 2009

В вашем фрагменте висит информация о доверии. Сделайте так, чтобы это выглядело так:

<?xml version="1.0" encoding="utf-8"?>
<asmv1:assembly manifestVersion="1.0" xmlns="urn:schemas-microsoft-com:asm.v1" xmlns:asmv1="urn:schemas-microsoft-com:asm.v1" xmlns:asmv2="urn:schemas-microsoft-com:asm.v2" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <assemblyIdentity version="1.0.0.0" name="MyApplication.app"/>
  <trustInfo xmlns="urn:schemas-microsoft-com:asm.v2">
    <security>
      <requestedPrivileges xmlns="urn:schemas-microsoft-com:asm.v3">
        <requestedExecutionLevel  level="requireAdministrator" uiAccess="false" />
      </requestedPrivileges>
    </security>
  </trustInfo>
</asmv1:assembly>
2 голосов
/ 06 ноября 2010

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

Возможная проблема 1
Каковы ваши настройки UAC? Как описано в Создание и вставка манифеста приложения (UAC) если у вас отключен контроль учетных записей и вы запрашиваете права администратора у

Приложение может запуститься, но позже произойдет сбой

Возможная проблема 2
В манифесте может быть что-то не так, поскольку требуется информация о сборке. Размещение всего вашего манифеста поможет.

Возможная проблема 3
Вы добавили узел applicationRequestMinimum, который не требуется для эскалации UAC. Возможно, стоит бросить это и попробовать снова.

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