2013-07-21 5 views
0

Мне нужно создать и записать файл под C: \ на Windows. Это obviusly требует права администратора.Права администратора для приложения Windows

Моего приложения состоит на:

  • сердцевины (.exe)
  • два .dll

Теперь я видел много времени программного обеспечения (например, игры), которые требуют администратор права во время установки и после того, как они смогут делать все, что захотят; как это возможно?

Как я могу это сделать через C++?

+0

Просто вмешательство: «[..] требуют права администратора во время установки и после того, как они могут делать все, что захотят [...]?» Что, например? – Lucas

+0

Я думаю, например, FIFA или F1 2012, они управляют своей настройкой под C: \ Programs ... – LppEdd

+1

Некоторые игры просто изменяют права доступа в своей папке в разделе 'C: \ Program Files'. Microsoft не рекомендует делать это (хотя было время, когда они это делали), вместо этого модифицируемые файлы данных должны быть установлены на 'C: \ ProgramData \ \ \ ...'. –

ответ

1

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

В частности, вам нужно будет добавить что-то вроде этого:

<trustInfo xmlns="urn:schemas-microsoft-com:asm.v2"> 
    <security> 
    <requestedPrivileges> 
     <requestedExecutionLevel level="requireAdministrator" uiAccess="false"/> 
    </requestedPrivileges> 
    </security> 
</trustInfo> 

Подробнее о application manifest files можно найти в MSDN.

Смежные вопросы