Portal    Foro    Buscar    FAQ    Registrarse    Conectarse


Publicar nuevo tema  Responder al tema 
Página 1 de 1
 
 
Ejecutar Programa Con SHELL/EXEC Y Responder A Pregunta De Dicho Programa
Autor Mensaje
Responder citando   Descargar mensaje  
Mensaje Ejecutar Programa Con SHELL/EXEC Y Responder A Pregunta De Dicho Programa 
 
Necesito ejecutar un programa de esta forma (O bien con EXEC o SHELL):

SHELL "programa parametros" WAIT TO variable
 


el problema que tengo es que dicho programa realiza dos preguntas en el promt a las cuales hay que responder Y o N. Que yo sepa dicho programa no tiene ninguna opcion de decirle "assume Y o assume N". No se si existe alguna forma desde gambas de responder a dichas preguntas sin que el usuario tenga que pulsar nada, asumiendo que siempre dichos valores seran los mismos para todas las ejecuciones de ese programa.

Y si no se puede con gambas.....¿como puedo resolver esto? (si es que se puede)

gracias
 



 
destroyer - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Ejecutar Programa Con SHELL/EXEC Y Responder A Pregunta De Dicho Programa 
 
Hola

shell admite dos formatos. El que tu has usado sirve para volcar el resultado en un string pero puedes usarlo de otra forma

Private P as process 'declarada a nivel de clase
Private Mensaje as string

P=shell "programa parámetros" for read write as Proceso 'con esto abres el stream.

public sub Proceso_Read() 'este evento salta al recibir datos que envía el proceso (cosas que escribe)
read #last, Mensaje,len(Mensaje)
print #p,"y" 'enviarle un YES
end

public sub Proceso_Kill() 'cuando el proceso termina
print Mensaje
end


Debe ser algo así. Habría que probarlo, no lo he hecho nunca.
 



 
última edición por soplo el Jueves, 09 Junio 2011, 19:47; editado 2 veces 
soplo - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Ejecutar Programa Con SHELL/EXEC Y Responder A Pregunta De Dicho Programa 
 
gracias soplo lo pruebo y comento el resultado.
 



 
destroyer - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Ejecutar Programa Con SHELL/EXEC Y Responder A Pregunta De Dicho Programa 
 
Puede hacerse de otra forma, usando el redireccionamiento "<" (Redirección de entrada)


Citar:
Redirección de entrada: un comando que necesita datos de entrada los toma de un fichero.


Ejemplo: more, mostraba un archivo poco a poco

$more <fichero.txt

nos muestra el archivo fichero.txt, pagina a pagina

El redireccionamiento de entrada se usa con comando de “filtro”, que en principo, estan destinados a trabajar con lo que tu le mandes.


Otro por ejemplo el grep: buscar texto dentro de lo que lo envies ..

grep palabra_a_buscas <fichero.txt



ver mi pagina https://sites.google.com/site/fpopr...ireccionamiento para mas detalles.

Nota:
El comando tiene que "soportar" la entrada/salida standard, sino no te funcionara (normalmente los comandos de gnu/linux, si lo soportan).
 




===================
Blog personal
Web: SoloGambas seleccion de articulos dedicados a Gambas
Visita el Curso de Gambas3 ¡¡¡Gratuito!!!
 
jsbsan - Ver perfil del usuarioEnviar mensaje privadoVisitar sitio web del usuario 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Ejecutar Programa Con SHELL/EXEC Y Responder A Pregunta De Dicho Programa 
 
He probado las 2 opciones y ninguna funciona. En gambas he probado esto:

Public hProcess As Process

Public Sub Form_Open()
      hProcess = Shell "ls -l" For Read Write As "Process"
End

Public Sub Process_Read()
  Dim sLine As String
  Read #hProcess, sLine, -256
  Print sLine
  Print #hProcess, "Y"
End
 


Y siempre me da ERROR "tuberia rota"

¿Alguna Idea?
 



 
destroyer - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Ejecutar Programa Con SHELL/EXEC Y Responder A Pregunta De Dicho Programa 
 
tendré que probarlo. Te diré algo mañana.
 



 
soplo - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Ejecutar Programa Con SHELL/EXEC Y Responder A Pregunta De Dicho Programa 
 
Pss yo creo que como ls no necesita de ningana entrada de información éste se ejecuta y termina. Por lo que ya no es posible enviarle información. El por ello de tuberia rota.

Mejor has la prueba con otro comando que espere data de la entrada standard.

Saludos!
 



 
razaAztk - Ver perfil del usuarioEnviar mensaje privadoVisitar sitio web del usuarioVer la galería personal del usuario 
Volver arribaPágina inferior
Mostrar mensajes anteriores:    
 
OcultarTemas parecidos
Tema Autor Foro Respuestas último mensaje
No hay nuevos mensajes Problema Con EXEC Y SHELL 0724fgark Shell Scripting 5 Viernes, 18 Noviembre 2011, 00:47 Ver último mensaje
0724fgark
No hay nuevos mensajes Enviar Un ENTER Por SHELL O EXEC? Agamenon General 2 Lunes, 27 Agosto 2012, 16:55 Ver último mensaje
jsbsan
No hay nuevos mensajes Pregunta: Como Crear Un Programa Que Sea A... jsbsan General 3 Sabado, 03 Agosto 2013, 09:46 Ver último mensaje
jguardon
No hay nuevos mensajes Ejecutar Programa Gambas En Windows alessandri Aplicaciones/Fragmentos de Código 15 Miercoles, 16 Diciembre 2015, 20:14 Ver último mensaje
tincho
 

Publicar nuevo tema  Responder al tema  Página 1 de 1
 

Usuarios navegando en este tema: 0 registrados, 0 ocultos y 1 invitado
Usuarios registrados conectados: Ninguno


 
Lista de permisos
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



  

 

cron