See artikkel on masintõlke peegelartikkel, palun klõpsake siia, et hüpata algse artikli juurde.

Vaade: 36267|Vastuse: 3

[WinForm] C# programmid, mis töötavad administraatori õigustega

[Kopeeri link]
Postitatud 09.10.2016 09:14:38 | | | |
Vista ja Windows 7 ning hilisemate versioonide puhul on lisatud turvamehhanism nimega UAC (User Account Control) ning kui UAC on sisse lülitatud, siis isegi kui kasutaja logib sisse administraatori õigustega, ei saa tema rakendused kirjutada süsteemi kataloogi, süsteemiregistrisse ega teistesse seadetesse, mis võivad vaikimisi süsteemi normaalset tööd mõjutada. See mehhanism parandab süsteemi turvalisust märkimisväärselt, kuid rakenduste arendajatele ei saa me sundida kasutajaid UAC-i välja lülitama, kuid mõnikord peab arendatav rakendus töötama administraatori teel – kuidas sellist funktsiooni saavutada?
Siin on, kuidas C# programm rakendab, paludes kasutajal käivitada administraatori õigused.
Selles näites näitab WinForm programm, et uus projekt genereeritakse ja muudetakse vastavalt:
Meetod 1: Alusta System.Diagnostics.Process.Start() kaudu:
Rakendusmeetod: Muuda vaikimisi genereeritud programmifaili ja muudetud kood on järgmine:
Kuna kood on juba kommenteeritud, ei lähe see detailidesse;
Mõju: Kuna see käivitatakse välise kutsega System.Diagnostics.Process.Start(), kui see töötab otse VS-i kaudu, ei küsi see VS-ilt administraatori õigusi, vaid ainult programm ise vajab administraatori õigusi, mis erineb rakenduse genereerimisest. See on peamine erinevus meetodi 2 rakendamisest.
Meetod 2: Lisades rakendusmanifesti faili:
Projekti "Lisa uus üksus" menüüs vali Rakendusmanifesti fail ja klõpsa nuppu Lisa.
Kui fail on lisatud, avatakse fail vaikimisi app.manifest, mis:
Muudetud kujul:
Seejärel ava Projekti omadused ja muuda Rakenduste vahekaardil ressursside manifest uueks app.manifestiks.
Ehita projekt uuesti üles ja kui avad programmi uuesti, palutakse sul käivitada administraatori õigused.
Pane tähele, et kui alustad silumist VS-is, küsitakse sulle, et see ülesanne nõuab rakendusel kõrgendatud õigusi. Nagu allpool näidatud:
Vali Restart koos teiste volitustega.
Meetod 3: Muuda programmifaili omadusi otse
Paremklõpsa programmifailil Compatibility vahekaardil Properties dialoogiaknas, mis avaneb
Märgi "Käivita see programm administraatorina".







Eelmine:{"Element '_id' ei vasta ühelegi väljale ega klassi omadusele."}
Järgmine:.NET/C# 4 viisi MongoDB päringute ja häguste päringute rakendamiseks [lähtekoodiga]
 Üürileandja| Postitatud 09.10.2016 09:15:27 |
Määra, kas programm töötab administraatorina
Nimeruumid tuleb lisada:
kasutades System.Security.Principal;


 Üürileandja| Postitatud 26.01.2021 09:59:52 |
C# määrab, kas programm töötab administraatorina
https://www.itsvse.com/thread-3004-1-1.html
 Üürileandja| Postitatud 13.10.2025 09:18:33 |
.NET Core rakendused töötavad administraatoritena Windowsi süsteemides, kood on järgmine:


Disclaimer:
Kõik Code Farmer Networki poolt avaldatud tarkvara, programmeerimismaterjalid või artiklid on mõeldud ainult õppimiseks ja uurimistööks; Ülaltoodud sisu ei tohi kasutada ärilistel ega ebaseaduslikel eesmärkidel, vastasel juhul kannavad kasutajad kõik tagajärjed. Selle saidi info pärineb internetist ning autoriõiguste vaidlused ei ole selle saidiga seotud. Ülaltoodud sisu tuleb oma arvutist täielikult kustutada 24 tunni jooksul pärast allalaadimist. Kui sulle programm meeldib, palun toeta originaaltarkvara, osta registreerimist ja saa paremaid ehtsaid teenuseid. Kui esineb rikkumist, palun võtke meiega ühendust e-posti teel.

Mail To:help@itsvse.com