https://foro.gambas-es.org/viewtopic.php?f=1&t=2147&p=12367#p12367
-----------------------------------
jsbsan
Viernes, 27 Enero 2012, 19:33

Re: Ejecutar Comandos Shell Desde Gambas Como Administrador
-----------------------------------
Hola, bienvenida Elena

[quote]El primer inconveniente que tengo es que algunos programas me piden la contraseña de root y no se como ponerla desde gambas. [/quote]

Esto se hace poniendo:
[b]echo contasena | sudo -S comando[/b]

Te dejo este código, que te pregunta la contraseña y ejecuta nautilus como root (si le das la contraseña correcta, claro)

[code linenumbers=false syntax=gambas]  dim contrasena as string
  Dim sUsuario As String
  Dim TU_USUARIO As String  
  contrasena = InputBox("Introduce contraseña del ROOT:")
  Shell ("whoami") To TU_USUARIO
  TU_USUARIO = Replace(TU_USUARIO, "\n", "")
  'Voy a entrar como ROOT, y compruebo si estoy como ROOT
  Shell ("echo " & contrasena & " | sudo -S whoami") To sUsuario
  If sUsuario <> "root\n" Then  
    'el usuario no es root no puedo hacer nada como superusuario ROOT
    Message.Info("No es la contraseña del root (" & sUsuario & ")")
    Return "error en root"
  Else
    comando = "echo " & var.contrasena & "|sudo -S nautilus" 'Ejecuta nautilus como root
    Shell comando Wait
  endif[/code]


[quote]yo quiero que el usuario pueda guardar la imagen generada donde quiera. [/quote]

A ver si te vale este codigo (he separado las instrucciones del comando con punto y coma ";"
[code linenumbers=false syntax=gambas]directorioQueQuiereUsuario="/home/elena/imagenes/"
comando="cd " & directorioQueQuiereUsuario & " ; scrot imagen.png"
shell comando[/code]


