Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Internet (https://www.clubdelphi.com/foros/forumdisplay.php?f=3)
-   -   Problemas con la función MCISendString para reproducir/repetir archivos MIDI (https://www.clubdelphi.com/foros/showthread.php?t=54494)

Black_Ocean 20-03-2008 17:36:17

Problemas con la función MCISendString para reproducir/repetir archivos MIDI
 
Hola =)

Bueno... mi problema es el siguiente:

Resulta que estoy ocupando la función MCISendString de Delphi para reproducir archivos MIDI (*.mid), pero no logro hacer que el tema se repita indefinidamente. El código es el siguiente:

Código Delphi [-]
uses
  MMSystem;

procedure TForm1.Button1Click(Sender: TObject);
Const
  ArchivoMIDI = 'c:\prueba.mid';
begin
  MCISendString(PChar('play ' + ArchivoMIDI + ' repeat'), nil, 0, 0);
end;

No se que es lo que falta o falla, sólo resulta esta función con este código:

Código Delphi [-]
uses
  MMSystem;

procedure TForm1.Button1Click(Sender: TObject);
Const
  ArchivoMIDI = 'c:\prueba.mid';
begin
  MCISendString(PChar('play ' + ArchivoMIDI), nil, 0, 0);
end;

Pero no repite el tema, sólo lo reproduce una vez. El flag repeat es para supuestamente que el tema se siga reproduciendo indefinidamente.

Sigo al pié de la letra la documentación de MSDN pero no me repite el tema. De aquí estoy sacando la info de MCISendString:

http://msdn2.microsoft.com/en-us/lib...92(VS.85).aspx

El comando Play desde aquí:
http://msdn2.microsoft.com/en-us/lib...42(VS.85).aspx

Qué estoy haciendo mal? qué me falta? Alguna sugerencia amigos =)

De antemano, gracias queridos colegas Delphimaniacos =)

Saludos.

cHackAll 24-03-2008 16:39:08

Código Delphi [-]
uses MMSystem;
 
...
 
procedure TForm1.Button1Click(Sender: TObject);
begin
 mciSendString('stop midi', '', 0, 0);
 mciSendString('close midi', '', 0, 0);
 mciSendString('open c:\prueba.mid type mpegvideo alias midi', '', 0, 0);
 mciSendString('play midi repeat', nil, 0, 0);
end;

Fuente
Saludos

Black_Ocean 27-03-2008 21:37:36

@[cHackAll]

Gracias por tu estupenda ayuda. Me ha resultado muy útil.

Problema solucionado.

Nuevamente, Gracias por tu tiempo colega.

Cordiales saludos.


La franja horaria es GMT +2. Ahora son las 01:23:14.

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