Llamada A La Consola, Proceso: Nautilus
Artículo |
Llamada A La Consola, Proceso: Nautilus
|
Hola;
Estaba desarrollando un programa cuando me encontré que si hago una llamada a la consola, ya sea con Shell o Exec, e inicio un proceso nautilus:
De tal forma que si la ruta no tiene ningún espacio funciona (/home/usuario/carpetasinespacio) pero si el nombre del nodo seleccionado si lo tiene (/home/usuario/nombre de la carpeta) no funciona y me da un error de nautilus.
No sé exactamente lo que hay que hacer para solucionarlo ya que se que en la consola debe quedar /home/usuario/carpeta\ con\ espacio,
pero ni idea
Saludos y espero que puedan ayudarme
|
user3304mm7126 [ Domingo, 06 Diciembre 2009, 20:42 ]
|
|
Llamada A La Consola, Proceso: Nautilus
Comentarios |
Re: Llamada A La Consola, Proceso: Nautilus
|
Hola.
¿Podrías explicar mejor lo que quieres hacer?.
Si utilizas el FileChooser, es para seleccionar un archivo a abrir. ¿Cual es tu objetivo al llamar a Nautilus?
Saludos
|
abarzuaf [ Domingo, 06 Diciembre 2009, 21:24 ]
|
|
Re: Llamada A La Consola, Proceso: Nautilus
|
¿Y no sería mejor utilizar la clase Desktop?
Prueba, pero a mi me parece que lo que quieres hacer es exactamente esto. Para que te funcione debes tener incluído gb.desktop en tu proyecto.
Un saludo
última edición por soplo el Lunes, 07 Diciembre 2009, 00:25; editado 1 vez
|
soplo [ Lunes, 07 Diciembre 2009, 00:22 ]
|
|
Re: Llamada A La Consola, Proceso: Nautilus
|
Haz caso a Soplo, pero si persistes en lo de Nautilus te diré que lo que no funciona es el espacio, que es carácter especial para la Shell (lo usa para separar parámetros). Si quieres usarlo tendrás que "escaparlo" es decir algo así como
Shell "Nautilus /home/micasateléfono/mis\ archivos\ bonitos"
Es decir, una barra invertida delante de cada carácter especial.
Suerte
|
shordi [ Lunes, 07 Diciembre 2009, 01:58 ]
|
|
Re: Llamada A La Consola, Proceso: Nautilus
|
Hola.
Prueba con este código:
PUBLIC SUB Button1_Click()
DIM sRutasinEspacios, sRutaconEspacios AS String
sRutaconEspacios = FileChooser1.Dir
sRutasinEspacios = Replace$(sRutaconEspacios, " ", "\\ ")'Reemplazamos los espacios por el caracter \ (debe ser doble)
SHELL "nautilus " & sRutasinEspacios
END
No importa si dentro de una carpeta con espacios en el nombre, tienes otras también con espacios.
Despues de las 2 barras invertidas debe ir un espacio.
Espero te sirva.
Saludos
última edición por abarzuaf el Lunes, 07 Diciembre 2009, 07:52; editado 2 veces
|
abarzuaf [ Lunes, 07 Diciembre 2009, 07:47 ]
|
|
Re: Llamada A La Consola, Proceso: Nautilus
|
OK, muchas gracias a todos y por haber contestado tan rápido, la solución de Soplo me funcionó en cuanto activé el componente, también probé la de abarzuaf y me funciona sin problemas; pero sin embargo me voy a quedar con la de Soplo por sencillez( aunque me apunto la tuya para otras cosillas , solo tuve que cambiar .selectedpath por .dir
Saludos y muchas gracias por su tiempo.
P.D.: Mi intención es que después de haber hecho todo, el usuario tuviese la oportunidad de abrir la carpeta de destino de los archivos
|
user3304mm7126 [ Miercoles, 09 Diciembre 2009, 19:56 ]
|
|
|
|
Página 1 de 1
|
Usuarios navegando en este tema: 0 registrados, 0 ocultos y 1 invitado Usuarios registrados conectados: Ninguno
|
|
|