Tämä artikkeli on konekäännöksen peiliartikkeli, klikkaa tästä siirtyäksesi alkuperäiseen artikkeliin.

Näkymä: 36267|Vastaus: 3

[WinForm] C#-ohjelmat, joita ajetaan ylläpitäjän oikeuksilla

[Kopioi linkki]
Julkaistu 9.10.2016 9.14.38 | | | |
Vistassa ja Windows 7:ssä ja uudemmissa versioissa on lisätty tietoturvamekanismi nimeltä UAC (User Account Control), ja jos UAC on päällä, vaikka käyttäjä kirjautuisi sisään ylläpitäjän oikeuksilla, sovellukset eivät voi kirjoittaa järjestelmähakemistoon, järjestelmärekisteriin tai muihin asetuksiin, jotka voivat vaikuttaa järjestelmän normaaliin toimintaan oletuksena. Tämä mekanismi parantaa järjestelmän turvallisuutta huomattavasti, mutta sovelluskehittäjille emme voi pakottaa käyttäjiä sammuttamaan UAC:ta, mutta joskus kehittämämme sovelluksen täytyy toimia ylläpitäjän tiellä, miten tällainen toiminto saavutetaan?
Näin C#-ohjelma toteuttaa kehottaen käyttäjää suorittamaan järjestelmänvalvojan oikeudet.
Tässä esimerkissä WinForm-ohjelma osoittaa, että uusi projekti luodaan ja muokataan sen mukaisesti:
Menetelmä 1: Käynnistä System.Diagnostics.Process.Start():
Toteutusmenetelmä: Muokkaa oletuksena tuotettua ohjelmatiedostoa, ja muokattu koodi on seuraava:
Koska koodia on jo kommentoitu, se ei mene yksityiskohtiin;
Vaikutus: Koska se käynnistetään kutsumalla ulkoista kutsua System.Diagnostics.Process.Start(), kun se ajaa suoraan VS:n kautta, se ei pyydä VS:ää tarvitsemaan ylläpitäjäoikeuksia, vaan vain itse ohjelma tarvitsee ylläpitäjäoikeudet, mikä eroaa ohjelman luovasta ohjelmasta. Tämä on pääasiallinen ero menetelmän 2 toteutukseen.
Menetelmä 2: Lisäämällä sovellusmanifestin tiedosto:
Project Add New Item -osiossa valitse Application Manifest File ja klikkaa Lisää-painiketta
Kun tiedosto lisätään, app.manifest avataan oletuksena, ja tiedosto on:
Muokattu:
Avaa sitten Projektin ominaisuudet ja muokkaa Manifestia Resurssit -välilehdellä sovellukset-välilehdellä uudeksi app.manifestiksi.
Rakenna projekti uudelleen, ja kun avaat ohjelman uudelleen, sinua pyydetään suorittamaan ylläpitäjän oikeudet.
Huomaa, että jos aloitat virheenkorjauksen VS:ssä, sinulle ilmoitetaan, että tämä tehtävä vaatii sovellukselta kohotetut oikeudet. Kuten alla on esitetty:
Valitse Käynnistä uudelleen muilla tunnuksilla.
Menetelmä 3: Muokkaa ohjelmatiedoston ominaisuuksia suoraan
Napsauta hiiren oikealla ohjelmatiedostoa yhteensopivuus-välilehdellä Ominaisuudet-valintaikkunassa, joka avautuu
Valitse "Suorita tämä ohjelma järjestelmänvalvojana".







Edellinen:{"Alkio '_id' ei vastaa mitään luokkakenttää tai ominaisuutta."}
Seuraava:.NET/C# 4 tapaa toteuttaa MongoDB-kyselyt ja epämääräiset kyselyt [lähdekoodin kanssa]
 Vuokraisäntä| Julkaistu 9.10.2016 9.15.27 |
Selvitä, toimiiko ohjelma järjestelmänvalvojana
Nimiavaruudet täytyy lisätä:
käyttäen System.Security.Principalia;


 Vuokraisäntä| Julkaistu 26.1.2021 9.59.52 |
C# määrittää, toimiiko ohjelma järjestelmänvalvojana
https://www.itsvse.com/thread-3004-1-1.html
 Vuokraisäntä| Julkaistu 13.10.2025 9.18.33 |
.NET Core -sovellukset toimivat ylläpitäjinä Windows-järjestelmissä, koodi on seuraava:


Vastuuvapauslauseke:
Kaikki Code Farmer Networkin julkaisemat ohjelmistot, ohjelmamateriaalit tai artikkelit ovat tarkoitettu vain oppimis- ja tutkimustarkoituksiin; Yllä mainittua sisältöä ei saa käyttää kaupallisiin tai laittomiin tarkoituksiin, muuten käyttäjät joutuvat kantamaan kaikki seuraukset. Tämän sivuston tiedot ovat peräisin internetistä, eikä tekijänoikeuskiistat liity tähän sivustoon. Sinun tulee poistaa yllä oleva sisältö kokonaan tietokoneeltasi 24 tunnin kuluessa lataamisesta. Jos pidät ohjelmasta, tue aitoa ohjelmistoa, osta rekisteröityminen ja hanki parempia aitoja palveluita. Jos rikkomuksia ilmenee, ota meihin yhteyttä sähköpostitse.

Mail To:help@itsvse.com