Sto sviluppando un programma del disco della partizione e per me per leggere il \\\\.\\PhysicalDrive0
ho bisogno dei diritti di admin.È possibile che l'eseguibile richieda i diritti di amministratore? (Windows 7)
Mi chiedo se è possibile, nel tempo di esecuzione, che il programma ottenga i diritti di amministratore? C'è qualche win api per questo?
Voglio farlo perché voglio che il programma venga eseguito con diritti di amministratore solo quando sta leggendo/scrivendo il disco. Per ragioni di sicurezza, non voglio che il programma esegua tutto il tempo con i diritti di amministratore, perché qualcuno potrebbe trovare un bug (stack o heap overflow per esempio) in qualche modulo ed eseguire comandi arbitrari come adm.
No. Dovresti spostare quel codice in un altro progetto .exe che presenta un manifest che richiede il permesso di elevazione UAC. Avvia quello .exe quando necessario. –
Grazie per tutte le risposte! Il trucco di separare il processo farà il lavoro. –
@HansPassant: non necessariamente _another_ .exe. Guarda Task Manager, che si riavvia con i diritti di amministratore se scegli "Visualizza processi per tutti gli utenti". – MSalters