2017-02-10 20 views
10

Mam aplikację konsoli dotnet, która wymaga uprawnień administratora do uruchomienia. Nie mogę znaleźć sposobu na zrobienie tego. W regularnych projektu chciałbym dodać app.manifest i ustawićAplikacja rdzeniowa dotnet działa jako administrator

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

ale nie mogę zrozumieć, jak umieścić to w kompilacji.

Jak to zrobić?

+0

Możesz mieć pecha. Jest to funkcja, która nie jest dostępna w wielu platformach w spójny sposób. .NET Core próbuje tylko zaimplementować funkcje dostępne wszędzie. – omajid

Odpowiedz

1

To nie jest obsługiwane w .NET Core.

. NET Core implementuje ten (rozszerzony) podzbiór funkcji platformy .NET Framework, o których wiadomo, że są wieloplatformowe.

Aplikacja żądająca i pobierająca uprawnienia podniesienia uprawnień nie jest obsługiwana na wielu platformach innych niż Windows. Dlatego nie jest obsługiwany przez .NET Core.

(spadnie przywileje, z drugiej strony, może być obsługiwana przez kilku platformach)

1

Jak omajid już wspomniano w komentarzu, nie istnieje obecnie żaden sposób zmusić elewację. Możesz jednak nadal móc uruchomić Terminal (Powershell, CMD itp.) Z uprawnieniami administratora. To także uruchomi Twoją aplikację z tymi samymi uprawnieniami - czyli - uprawnieniami administratora. Potrzebowałem tego, aby HttpListener dodawał do niego przedrostki.

+0

Dobra uwaga. Na * nix możesz na przykład użyć 'sudo'. – omajid