El Resultado De Shell No Lo Muestra En Un Textarea


Ir a la página Anterior  1, 2

Objetivo: Re: El Resultado De Shell No Lo Muestra En Un Textarea
Al fin salio lo que buscaba, al menos algo parecido, lo comparto:


pruebasshellexec5


Código: [Descargar] [Ocultar]
  1.  
  2. ' gambas class file
  3.  
  4. 'declaración de constantes ya que sudo, cat y pipe
  5. 'son comandos que seguramente usaremos mas de una vez
  6. Public Const cat1 As String = " cat"
  7. Public Const sudo1 As String = "sudo"
  8. Public Const pipe1 As String = "|"
  9.  
  10. Public Sub Form_Open()
  11.  Me.center 
  12. End
  13. 'creamos esta funsion asi nos ahorramos código,
  14. 'jeje que algún programador explique como funciona una funsión
  15. Public Function comandoymodificadores(fvar1 As String, fvar2 As String, fvar3 As String, fvar4 As String, fvar5 As String, fvar6 As String, fvar7 As String, fvar8 As String)
  16.  Dim va1, va2, va3, va4, va5, va6, va7, va8, resultado As String
  17. va1 = fvar1
  18. va2 = fvar2
  19. va3 = fvar3
  20. va4 = fvar4
  21. va5 = fvar5
  22. va6 = fvar6
  23. va7 = fvar7
  24. va8 = fvar8
  25.  Shell va1 & va2 & va3 & va4 & va5 & va6 & va7 & va8 To resultado
  26. TextArea1.Text = resultado
  27. End
  28.  
  29. Public Sub btnifconfig_Click()
  30.  Dim ifconfig1 As String
  31. ifconfig1 = "ifconfig"
  32. comandoymodificadores(ifconfig1, Null, Null, Null, Null, Null, Null, Null)
  33.  
  34. End
  35.  
  36. Public Sub btnuname_Click()
  37.  Dim uname1, help1 As String
  38. help1 = " --help"
  39. uname1 = "uname"
  40. comandoymodificadores(uname1, help1, Null, Null, Null, Null, Null, Null)
  41. End
  42.  
  43. Public Sub btngroup_Click()
  44.  Dim group1, help1 As String
  45. group1 = " /etc/group"
  46. comandoymodificadores(sudo1, cat1, group1, Null, Null, Null, Null, Null)
  47. End
  48.  
  49. Public Sub btnarchivo_Click()
  50.  Dim grep1, dir1, nano1, xfile1 As String
  51. TextArea1.Clear
  52. grep1 = "grep"
  53. dir1 = " /proc/meminfo"
  54. nano1 = "nano"
  55. xfile1 = "/home/vector/Escritorio/memtoral.txt"
  56. comandoymodificadores(grep1, cat1, dir1, pipe1, nano1, xfile1, Null, Null)
  57. TextArea1.Text = "Acción ejecutada"
  58. End
  59.  
  60. Public Sub btnsalir_Click()
  61.  Me.Close
  62. End
  63. 'Gracias Shell, con tu código pude resolver ( Shell orden & modificador To TextArea1.Text )
  64.  
  65.  

Objetivo: Re: El Resultado De Shell No Lo Muestra En Un Textarea
Una pequeña correpcion:

No se debe de usar este tipo de rutas:

xfile1 = "/home/vector/Escritorio/memtoral.txt"


Lo mejor es usar user.home (http://gambasdoc.org/help/comp/gb/user/home?es&v3&view


xfile1 = user.home & "/Escritorio/memtoral.txt"


Y si es un archivo temporal... mejor usar la carpeta "/tmp/" que se borra cada vez que apaguemos el ordenador...asi no "guarreamos" mucho nuestro Escritorio

Saludos

Objetivo: Re: El Resultado De Shell No Lo Muestra En Un Textarea
Otra cosita:
Public Function comandoymodificadores(fvar1 As String, fvar2 As String, fvar3 As String, fvar4 As String, fvar5 As String, fvar6 As String, fvar7 As String, fvar8 As String)
Dim va1, va2, va3, va4, va5, va6, va7, va8, resultado As String
va1 = fvar1
va2 = fvar2
...

Es totalmente redundante. Las variables fvarn son de ámbito local. las variables van son de ámbito local, también. Por tanto son redundantes y no sirven para nada.
Puedes usar sin problemas:

Shell fva1 & fva2 & fva3 & fva4 & fva5 & fva6 & fva7 & fva8 To resultado


Claro que entonces la función no tiene razón de existir, al quedar reducida a una línea y no ahorras código ninguno al usarla.
Podrías hacer, por ejemplo.


Public Sub btnifconfig_Click()

shell "ifconfig" to textarea1.text

End


Lo de desviar la salida de shell a una propiedad de un control (textarea1.text) no lo he hecho nunca, pero no veo por qué no habría de funcionar.

última edición por shordi el Lunes, 03 Junio 2013, 11:53; editado 2 veces
Perfil MP  
Objetivo: Re: El Resultado De Shell No Lo Muestra En Un Textarea
jsbsan y shordi sigo aprendiendo con sus comentarios y correcciones,saludos.

Ir a la página Anterior  1, 2

Página 2 de 2


  
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

   

Está utilizando la versión (Lo-Fi). Para ver la versión completa del foro, haga clic aquí.

Powered by Icy Phoenix based on phpBB
Design by DiDiDaDo

Página generada en:: 0.4125s (PHP: -63% SQL: 163%)
Consultas SQL: 45 - Debug off - GZIP Activado