Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 08-07-2012
ruth22 ruth22 is offline
Registrado
 
Registrado: jun 2010
Posts: 3
Poder: 0
ruth22 Va por buen camino
Red face insertar sonidos en delphi con el ejecutable

Hola a todos, tengo uns duda muy grande acerca de como introducir en el ejecutable de delphi sonidos que ya los tengo en formato .wav. La cuestion es, estoy utilizando el codigo de PlaySound y alli debo decirle la ruta de mi sonido, ejemplo (PChar('D:\PEDAGOGICO\DOKO\SONIDOS\CORRECCIONES\bien.wav'), 0, SND_SYNC);

De esa manera funciona perfectamente porque lo hago de mi propia computadora, pero no me sirve en otras pc porque obviamente no encuentra la ruta del sonido ya que es la de mi computador. He leido sobre crear archivos de recursos para ingresar los sonidos al ejecutable pero no se como crear esos archivos.

Si alguien me puede ayudar a crear este tipo de archivos . res e insertarlos estaria muy agradecida.
Responder Con Cita
  #2  
Antiguo 08-07-2012
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Poder: 36
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Hola ruth22.

Voy a intentar darte un ejemplo de la forma más sencilla que me es posible:

1) Abri el block de notas
2) Escribí algunos archivos wav precedidos por su ruta, por ejemplo:
Código:
chimes WAVE "C:\WINDOWS\MEDIA\CHIMES.WAV"
chord WAVE "C:\WINDOWS\MEDIA\CHORD.WAV"
tada WAVE "C:\WINDOWS\MEDIA\TADA.WAV"
3) Guarda el archivo en la carpeta de tu aplicación con el nombre SOUND.RC (o el nombre que desees pero la extensión debe ser .RC).
4) Busca el archivo BRCC32.EXE. La ubicación depende de la versión de Delphi, pero seguramente esté en la carpeta Archivos de programa\...\Delphi_N\bin
5) Desde la línea de comando y ubicada en la carpeta de tu aplicación hace:
Código:
C:\RUTA_AL_ARCHIVO_BRCC32_EXE\BRCC32 SOUND.RC
Esto te generará el archivo SOUND.RES y aquí finaliza la operación desde el prompt.

Luego, ya en Delphi, para incluir el archivo de recurso y ejecutar los WAV:
Código Delphi [-]
...
implementation {$R *.dfm} {$R SOUND.RES }

uses MMSystem;
...

procedure TForm1.Button1Click(Sender: TObject);
begin
  PlaySound('chimes', 0, SND_RESOURCE);
  PlaySound('chord', 0, SND_RESOURCE);
  PlaySound('tada',0, SND_RESOURCE);
end;
...

En este enlace podes ampliar información sobre el tema: Storing Resource(WAV, MP3,...)

Saludos.
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....
Responder Con Cita
  #3  
Antiguo 08-07-2012
Avatar de marcoszorrilla
marcoszorrilla marcoszorrilla is offline
Capo
 
Registrado: may 2003
Ubicación: Cantabria - España
Posts: 11.221
Poder: 10
marcoszorrilla Va por buen camino
Yo hago esto:

Código Delphi [-]
procedure TfrConFacturas.spModifClick(Sender: TObject);
begin
    //
  if (Estado =2) and (DmFact.IBDtsFacturasCONT.Value = 'S') then
  begin
  sndPlaySound('C:\Windows\Media\Ringout.wav',
SND_NODEFAULT Or SND_ASYNC Or SND_LOOP);
  ShowMessage('ATENCION:'+ Chr(10)+Chr(13)+'Factura contabilizada, desmárquela,'+ Chr(10)+Chr(13)+' proceda a los cambio y comuníquelo'+ Chr(10)+Chr(13)+' a Contabilidad');
  sndPlaySound(nil, 0); // Detiene el sonido 
  end
  else
  begin
  Application.CreateForm(TfrModVentas, frModVentas);
  frModVentas.ShowModal;
  end;
end;

Un Saludo.
__________________
Guía de Estilo de los Foros
Cita:
- Ça c'est la caisse. Le mouton que tu veux est dedans.
Responder Con Cita
  #4  
Antiguo 09-07-2012
ruth22 ruth22 is offline
Registrado
 
Registrado: jun 2010
Posts: 3
Poder: 0
ruth22 Va por buen camino
Esos codigos me funcionan muy bien, el problema viene cuando voy a ejecutar el programa en otra computadora puesto que la ruta de los sonidos es de mi propio disco duro y claro en otra pc no encuentra esa ruta y por tanto no se escuchan , muchas gracias por responder sabran como hacer lo que planteo?
Responder Con Cita
  #5  
Antiguo 09-07-2012
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Poder: 36
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Cita:
Empezado por ruth22 Ver Mensaje
Esos codigos me funcionan muy bien, el problema viene cuando voy a ejecutar el programa en otra computadora puesto que la ruta de los sonidos es de mi propio disco duro y claro en otra pc no encuentra esa ruta y por tanto no se escuchan , muchas gracias por responder sabran como hacer lo que planteo?
Hola ruth22.

¿ Leiste los pasos y el código que te indiqué ? Te pregunto esto por que precisamente hace lo que solicitas...

Saludos.
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....
Responder Con Cita
  #6  
Antiguo 09-07-2012
Avatar de Neftali [Germán.Estévez]
Neftali [Germán.Estévez] Neftali [Germán.Estévez] is offline
[becario]
 
Registrado: jul 2004
Ubicación: Barcelona - España
Posts: 18.269
Poder: 10
Neftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en bruto
Cita:
Empezado por ruth22 Ver Mensaje
...puesto que la ruta de los sonidos es de mi propio disco duro y claro en otra pc no encuentra esa ruta y por tanto no se escuchan...
Has probado los ejemplos?
En el que te ha colocado ecfisa, los sonidos van "dentro" del ejecutable, como recursos.
Los path que se adjuntan son en tiempo de compilación, una vez generado el EXE ya no hay problema.
__________________
Germán Estévez => Web/Blog
Guía de estilo, Guía alternativa
Utiliza TAG's en tus mensajes.
Contactar con el Clubdelphi

P.D: Más tiempo dedicado a la pregunta=Mejores respuestas.
Responder Con Cita
  #7  
Antiguo 25-11-2012
Avatar de bulc
bulc bulc is offline
Miembro
 
Registrado: jun 2010
Posts: 415
Poder: 14
bulc Va por buen camino
CreaUnaCarpetaSonoraYPasala

Gracias por la explicación de crear recursos embutidos en el exe.
Otra solución sería colocar los sonidos (\SOUNDS) en una carpeta que cuelgue de la que guarda el ejecutable. De modo que al pasarle a alguien el .EXE también se le incluyan los sonidos. Luego como constantes se incluyen en el código:
Código Delphi [-]
Const
Fagina='C:\... \APLICACION\SOUND\TARARI.WAV'
//Haces un procedure  que requiera un parámetro string:
Procedure Toca(xFile, PChar);
begin
  SndPLaySound(xFile, SND_ASYNC);
end;
Para ejecutarlo pones una línea tal como : Toca(Fagina);
Y no olvides añadir al Uses MMSystem.

Yo es el método que uso, cuando busco solución rápida y sencilla. Va bien. Sin contar el espacio en disco, claro.
Responder Con Cita
Respuesta



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

Temas Similares
Tema Autor Foro Respuestas Último mensaje
multiples sonidos en delphi Celta Varios 4 02-10-2010 01:28:31
sonidos midi en delphi JefeNet Varios 4 14-10-2007 20:03:16
sonidos en aplicacion de delphi. kokud Varios 1 27-07-2007 00:13:11
Sonidos con delphi el_enigma1 OOP 2 14-01-2005 00:31:30
Insertar sonidos egm1802 API de Windows 1 23-04-2004 18:05:39


La franja horaria es GMT +2. Ahora son las 02:50:17.


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