Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > API de Windows
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 30-05-2004
Angel Fernández Angel Fernández is offline
Miembro
 
Registrado: may 2004
Ubicación: Valencia - España
Posts: 141
Poder: 20
Angel Fernández Va por buen camino
Question Ejecutar aplicación en segundo plano y recoger los mensajes

Saludos a todo el mundo. Quisiera pedir ayuda respecto a un tema que me tiene bastante ocupado últimamente. Sé que puedo ejecutar una aplicación desde Delphi con shellexecute (por ejemplo), pero ¿cómo puedo ejecutar una aplicación en segundo plano y recoger los mensajes que me va enviando? Por ejemplo: quiero ejecutar lame.exe (el codificador de mp3) en segundo plano, pero quiero mostrar en una barra el progreso y en un memo las frecuencias que va tratando. Para ello, lame.exe presenta en una pantalla DOS una información muy útil que va actualizando cada segundo. ¿Puedo recoger esta información para presentarla a mi conveniencia en un form?

Gracias a todos por vuestras respuestas.
Responder Con Cita
  #2  
Antiguo 30-05-2004
Avatar de jachguate
jachguate jachguate is offline
Miembro
 
Registrado: may 2003
Ubicación: Guatemala
Posts: 6.254
Poder: 27
jachguate Va por buen camino
Si lame.exe escribe esa información en la salida estándar, podes redireccionarla a una tubería (pipe). Para ello has de lanzarla con CreateProcess y su salida estándar redireccionada a una tubería creada por tu proceso con CreatePipe

Es muy probable que ya encontres algun componente que encapsule la tubería... en torry seguramente lo hallas.

Aqui tenes un vínculo directo al TPipe ubicado en torry's, pero seguramente hay mas.

Hasta luego.

__________________
Juan Antonio Castillo Hernández (jachguate)
Guía de Estilo | Etiqueta CODE | Búsca antes de preguntar | blog de jachguate
Responder Con Cita
  #3  
Antiguo 30-05-2004
Avatar de delphi.com.ar
delphi.com.ar delphi.com.ar is offline
Federico Firenze
 
Registrado: may 2003
Ubicación: Buenos Aires, Argentina *
Posts: 5.932
Poder: 26
delphi.com.ar Va por buen camino
Lame Encoder tiene una DLL, para poder hacer esto sin crear procesos hijos, que por prolijidad y facilidad, te recomiendo usarla.

Saludos!
__________________
delphi.com.ar

Dedique el tiempo suficiente para formular su pregunta si pretende que alguien dedique su tiempo en contestarla.
Responder Con Cita
  #4  
Antiguo 04-06-2004
Angel Fernández Angel Fernández is offline
Miembro
 
Registrado: may 2004
Ubicación: Valencia - España
Posts: 141
Poder: 20
Angel Fernández Va por buen camino
Unhappy ¿Sabes cómo utilizar Lame_enc.dll?

Sé que lame tiene la librería lame_enc.dll y es la que estoy usando. Funciona bien excepto en un problema que me va a volver loco y es que en modo VBR o ABR (bitrato variable o bitrato medio) no consigo hacer que escriba la cabecera del fichero mp3. ¿Qué pasa si el fichero no tiene cabecera? Aparentemente nada; el fichero suena bien. Pero hay un problemilla: ningún reproductor de mp3 indica bien la longitud en segundos del fichero ni es capaz de reconocer el bitrate (indican siempre 32 kbts, el mínimo). He intentado "forzar" al dll con el procedimiento bewritevbrheader(string), pero lo único que consigo es un mensaje de error: BE_ERR_INVALID_FORMAT_PARAMETERS. ¿Alguien sabe qué leches pasa?

En mi defensa he de decir que, por lo que he visto, es un problema universal en casi todos los programillas que usan lame_enc.dll; todos pecan de no escribir la cabecera del archivo mp3. Una honrosa excepción a esto es el entorno de Audiograbber que funciona de maravilla (¿alguien sabe el código fuente de Audiograbber? ¿Demasiado pedir?).

Gracias.

P.D: Entiendo que este problema, más que de programación en Delphi, es de uso de lame_enc.dll, pero en fín, si alguien puede ayudar o decirme alguna dirección será bienvenido.
Responder Con Cita
Respuesta


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro


La franja horaria es GMT +2. Ahora son las 00:43:58.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi