Autor |
Mensaje |
4octavio4
Programador
Registrado: Noviembre 2009
Mensajes: 100
Edad: 31 Ubicación:
|
Llamar A Un Proceso Con Privilegios De Administrador
Quiero llamar a aptitude desde mi programa, y necesita privilegios de administración.
He probado con gksudo y funcionaba, pero al añadir una opción al final de aptitude así:
gksudo aptitude install ocrad -y
deja de funcionar, porque se lo toma como si fuera una opción de gksudo y no de aptitude.
Otro problema es que esto solo funcionaría en gnome, y me gustaría que fuera posible en kde, xfce o lo que fuera.
¿Alguna idea de un comando estándar para obtener privilegios de administración del usuario?
|
#1 Domingo, 21 Febrero 2010, 14:58 |
|
|
shordi
Analista Programador
Registrado: Septiembre 2009
Mensajes: 4982
Edad: 64 Ubicación: Albacete
|
Re: Llamar A Un Proceso Con Privilegios De Administrador
Yo eso lo he resuelto con un formulario donde le pides la clave al usuario y luego ejecutas este comando:
TRY SHELL "echo " & Clave.Text & "|sudo -S apt-get -y install elpaquete" WAIT
El -S del sudo le permite tomar la clave de la salida estándar del echo.
Espero que te sirva. Suerte.
=================== No podemos regresar
|
#2 Domingo, 21 Febrero 2010, 20:28 |
|
|
4octavio4
Programador
Registrado: Noviembre 2009
Mensajes: 100
Edad: 31 Ubicación:
|
Re: Llamar A Un Proceso Con Privilegios De Administrador
Me sirve en parte.
Si pongo la contraseña correcta funciona, pero me es imposible saber cuando he puesto la contraseña incorrecta, simplemente no hace nada.
|
#3 Domingo, 21 Febrero 2010, 23:54 |
|
|
shordi
Analista Programador
Registrado: Septiembre 2009
Mensajes: 4982
Edad: 64 Ubicación: Albacete
|
Re: Llamar A Un Proceso Con Privilegios De Administrador
Prueba a desviar la salida estandar a un fichero y luego lo cargas en una variable y compruebas el contenido. Algo así:
dim fich as string
TRY SHELL "echo " & Clave.Text & "|sudo -S apt-get -y install elpaquete >fichero.txt" WAIT
fich=file.load("fichero.txt")
decidir acción según el contenido de fich...
No lo he probado, pero creo que debería funcionar.
=================== No podemos regresar
|
#4 Lunes, 22 Febrero 2010, 00:06 |
|
|
4octavio4
Programador
Registrado: Noviembre 2009
Mensajes: 100
Edad: 31 Ubicación:
|
Re: Llamar A Un Proceso Con Privilegios De Administrador
Hombre, imagino que podría funcionar, pero esperaba algún sistema algo más elegante, alguna forma de gestionar los errores del proceso.
|
#5 Lunes, 22 Febrero 2010, 01:10 |
|
|
shordi
Analista Programador
Registrado: Septiembre 2009
Mensajes: 4982
Edad: 64 Ubicación: Albacete
|
Re: Llamar A Un Proceso Con Privilegios De Administrador
=================== No podemos regresar
|
#6 Lunes, 22 Febrero 2010, 10:19 |
|
|
4octavio4
Programador
Registrado: Noviembre 2009
Mensajes: 100
Edad: 31 Ubicación:
|
Re: Llamar A Un Proceso Con Privilegios De Administrador
Una cuestión más:
¿Cómo se puede abortar un cierre?
He probado a poner STOP EVENT en Form_Close pero se cierra igualmente.
|
#7 Lunes, 22 Febrero 2010, 14:19 |
|
|
h4k
Usuario
Registrado: Febrero 2010
Mensajes: 43
Edad: 33 Ubicación:
|
Re: Llamar A Un Proceso Con Privilegios De Administrador
sudo tira el error "sorry, try again"
si desvías el error a un string, con una simple comparación puedes verificar si hubo error o no.
SHELL comando TO string
|
#8 Lunes, 22 Febrero 2010, 21:11 |
|
|
|