Come chiamare un programma da eseguire con i privilegi di amministratore ma sotto lo stesso utente (prompt dei comandi di Windows)


1

Ho bisogno di invocare un programma con privilegi di amministratore dal prompt dei comandi. dovrebbe richiedere all'utente un avviso come:

inserisci qui la descrizione dell'immagine

Ho trovato molte risposte come:

runas.exe /user:administrator %~dp0\MY_PROGRAM.BAT

Ma non mi aiuta, perché in questo modo, il programma viene eseguito con l'account Administrator mentre ho bisogno che questo programma venga eseguito con lo stesso utente che invoca il mio script.

Sto lavorando su Win7 / 8 e Server 2008 R2


Come stai tentando di avviare il software dal prompt dei comandi mentre sei loggato come utente? Verrà visualizzato il prompt UAC per l'utente, quindi verranno richieste le credenziali per apportare modifiche, tuttavia il software effettivo verrà comunque eseguito come utente finale ...
CharlesH,

Non ti ho ricevuto, perché verrà visualizzato il messaggio UAC per l'utente? Diciamo che lo script e il programma sono memorizzati in una cartella condivisa locale (ad es. C: \ Shared_Folder)
elady,

Ok scusa, lasciami affrontare questo in un altro modo. Come hai intenzione di invocare questo programma?
CharlesH,

Sto solo chiamando il programma direttamente dalla sceneggiatura
elady,

Più alto livello, però, sono davanti al PC che esegue lo script o viene eseguito all'accesso o come attività pianificata, ecc.?
CharlesH,

Risposte:


1

Sudo per Windows lancia i programmi configurati con privilegi elevati mantenendo l'ambiente dell'utente corrente. Quindi il programma verrà eseguito con i privilegi di amministratore completi ma sotto l'utente corrente. IIRC installa un servizio di finestre (amministratore richiesto per l'installazione) che esegue il sollevamento pesante. Non sembra più essere sviluppato ma funziona bene su Windows 7, 8 e 8.1.


È come "Esegui come amministratore" del menu degli elementi. Sto chiedendo come fare lo stesso, ma dal prompt dei comandi, piuttosto che dall'interfaccia della GUI.
elady,

C'è anche un'interfaccia a riga di comando. Basta eseguire sudo your-programil file batch o il prompt dei comandi. Ti chiederà quindi la password nella riga di comando, ma puoi configurarla per memorizzare nella cache l'autenticazione o anche fornire la password come argomento (in testo semplice però). Si noti che sudo.exeè un eseguibile installato. Il menu di scelta rapida è solo un wrapper per exe.
Vamsi,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.