|
Página 2 de 4
|
Utilizar comados de consonla en aplicaciones gráficas.
Autor |
Mensaje |
jguardon
Administrador
Registrado: Septiembre 2009
Mensajes: 2708
Edad: 57 Ubicación: Granada
|
Re: Utilizar comados de consonla en aplicaciones gráficas.
Prueba entonces a escribirlo directamente en una consola de bash, a ver qué pasa... (sin el 'SHELL', lógicamente).
En caso de que funcione, prueba esta otra forma:
EXEC ["gksudo", "shutdown", "-h", "-q", "5"]
o esta otra:
EXEC ["gksudo", "shutdown", "-hq", "5"]
o esta:
SHELL "gksudo \'shutdown -hq 5\'"]
Saludos
=================== Jesús Guardón
Por favor, usemos el corrector ortográfico antes de pulsar el botón "Enviar".
"uo ǝs ʇɐu pıɟıɔıן ɐdɹǝupǝɹ ɐ dɹoƃɹɐɯɐɹ, soןo ɥɐʎ bnǝ dɹodouǝɹsǝןo"
|
#11 Miercoles, 28 Julio 2010, 15:02 |
|
|
kimizombie
|
Re: Utilizar Comados De Consonla En Aplicaciones Gráficas.
Prueba entonces a escribirlo directamente en una consola de bash, a ver qué pasa... (sin el 'SHELL', lógicamente).
En caso de que funcione, prueba esta otra forma:
EXEC ["gksudo", "shutdown", "-h", "-q", "5"]
o esta otra:
EXEC ["gksudo", "shutdown", "-hq", "5"]
o esta:
SHELL "gksudo \'shutdown -hq 5\'"]
Saludos
El tercer codigo me a funcionado lo que no entiendo es porque solo me a funcionado el tercero :S si me pueden explicar un poco
|
#12 Miercoles, 28 Julio 2010, 15:24 |
|
|
Ayortano
|
Re: Utilizar Comados De Consonla En Aplicaciones Gráficas.
Hola, al parecer (no sé si estoy en lo cierto), no tomaba los argumentos correctamente, en este caso, el path al fichero ejecutable que root debía ejecutar (valga la redundancia). Esa línea "\" es un espacio. Creo que exec no separaba bien los argumentos.
|
#13 Miercoles, 28 Julio 2010, 18:33 |
|
|
jguardon
Administrador
Registrado: Septiembre 2009
Mensajes: 2708
Edad: 57 Ubicación: Granada
|
Re: Utilizar comados de consonla en aplicaciones gráficas.
La razón es porque de las otras formas, el intérprete (y también bash) interpretan los argumentos que le pasas a "shutdown" como si todos ellos fueran argumentos de gksudo y por lo tanto se produce un error.
El último ejemplo usa comillas simples para que gksudo entienda que lo que le sigue es un comando completo con sus propios argumentos.
Y no, la barra \ no es para insertar espacios, sino para escapar las comillas simples y el intérprete de gambas no se queje...
Hay otros métodos de hacerlo, con la palabra quote("testo a escapar"):
http://new.gambasdoc.org/help/lang/quote
Pero es para gambas 3
Entonces supongo que usando EXEC, esto podría también funcionar:
EXEC ["gksudo", "shutdown -hq 5"]
Saludos
=================== Jesús Guardón
Por favor, usemos el corrector ortográfico antes de pulsar el botón "Enviar".
"uo ǝs ʇɐu pıɟıɔıן ɐdɹǝupǝɹ ɐ dɹoƃɹɐɯɐɹ, soןo ɥɐʎ bnǝ dɹodouǝɹsǝןo"
|
#14 Miercoles, 28 Julio 2010, 20:31 |
|
|
Ayortano
|
Re: Utilizar Comados De Consonla En Aplicaciones Gráficas.
Es cierto, en este caso no es para los espacios.
|
#15 Miercoles, 28 Julio 2010, 22:49 |
|
|
kimizombie
|
Re: Utilizar Comados De Consonla En Aplicaciones Gráficas.
La razón es porque de las otras formas, el intérprete (y también bash) interpretan los argumentos que le pasas a "shutdown" como si todos ellos fueran argumentos de gksudo y por lo tanto se produce un error.
El último ejemplo usa comillas simples para que gksudo entienda que lo que le sigue es un comando completo con sus propios argumentos.
Y no, la barra \ no es para insertar espacios, sino para escapar las comillas simples y el intérprete de gambas no se queje...
Hay otros métodos de hacerlo, con la palabra quote("testo a escapar"):
http://new.gambasdoc.org/help/lang/quote
Pero es para gambas 3
Entonces supongo que usando EXEC, esto podría también funcionar:
EXEC ["gksudo", "shutdown -hq 5"]
Saludos
Buenas voy a probarlo xD lo malo es que luego se me apaga el pc porque no se desde donde se para el proceso pero bueno.
Otra pregunta tengo un textbox, puedo cambiar el cinco por una variable definida por el textbox?
Muchas gracias
|
#16 Jueves, 29 Julio 2010, 00:01 |
|
|
Ayortano
|
Re: Utilizar Comados De Consonla En Aplicaciones Gráficas.
Claro que puedes, de esta manera:
EXEC ["gksudo", "shutdown -hq ", textbox1.text]
Ahora, te recomiendo usar un spinbox (quedan mejor y son más cómodos)
En ese caso quedaría:
EXEC ["gksudo", "shutdown -hq ",str(spinbox1.value)]
Saludos
P.D: Obviamente debes cambiar los nombres de los controles por los tuyos, por ejemplo si el textbox se llama juan, queda juan.text y no textbox1.text
última edición por Invitado el Jueves, 29 Julio 2010, 02:04; editado 1 vez
|
#17 Jueves, 29 Julio 2010, 02:03 |
|
|
kimizombie
|
Re: Utilizar Comados De Consonla En Aplicaciones Gráficas.
Claro que puedes, de esta manera:
EXEC ["gksudo", "shutdown -hq ", textbox1.text]
Ahora, te recomiendo usar un spinbox (quedan mejor y son más cómodos)
En ese caso quedaría:
EXEC ["gksudo", "shutdown -hq ",str(spinbox1.value)]
Saludos
P.D: Obviamente debes cambiar los nombres de los controles por los tuyos, por ejemplo si el textbox se llama juan, queda juan.text y no textbox1.text
Muchas gracias eres un crack t y todos los que formais la comunidad ahora lo pruebo y comento, como siempre al tener todas las dudas resueltas pondre las soluciones en el primer post
|
#18 Jueves, 29 Julio 2010, 02:08 |
|
|
Ayortano
|
Re: Utilizar Comados De Consonla En Aplicaciones Gráficas.
Todos nos empeñamos en aprender, como tú lo estás haciendo. Algún día vendrá un novato y le enseñarás, como me pasó a mi y a todos.
|
#19 Jueves, 29 Julio 2010, 02:21 |
|
|
razaAztk
aztk crux
Analista Programador
Registrado: Enero 2010
Mensajes: 340
Edad: 35 Ubicación: Tenochtitlan
|
Re: Utilizar Comados De Consonla En Aplicaciones Gráficas.
@ kimizombie:
Yo en vez de ponerle el tiempo a la orden bash usaría un componente timer. Así si necesitase cancelar la orden simplemente cancelaría el Timer (en vez de usar otra orden bash).
Para la orden bash, usaría 'gksudo shutdown -h now'
Saludos!
|
#20 Jueves, 29 Julio 2010, 03:54 |
|
|
|
Temas parecidos
Temas parecidos
|
Página 2 de 4
|
Usuarios navegando en este tema: 0 registrados, 0 ocultos y 1 invitado Usuarios registrados conectados: Ninguno
|
No puede crear mensajes No puede responder temas No puede editar sus mensajes No puede borrar sus mensajes No puede votar en encuestas No puede adjuntar archivos Puede descargar archivos No puede publicar eventos en el calendario
|
|
|
|
|